Is it possible to insert, delete and update data programatically through a datagrid control.

What I am trying to do is that I fill up the datagrid with a SQL query recordset involving three tables. Now when I try to change any data in the grid during run time..as soon as I leave that field I get an error saying
"Insufficient key column information for updating and refreshing".

I understand that it is looking for the primary keys of the tables involved in the query; but my problem is that I don't need to update all the three tables. All I need to do is update a couple of columns in two of the tables..........

Is it even possible?????

Any help is appreciated..