hi every one
thank u all ,
i have found the problem
the problem is i tried to assinged value to some others field in post_change trigger of a field , so this trigger fires when i execute query or after i delete ,
so after i delete this record it tries to assig a null value to a filed and it makes that problem happened
i delete the assignment code and changed it to another trigger and it works properly .