Click here to Skip to main content
15,901,891 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
i have following query:
SQL
INSERT INTO DSActor.DTL_PHOTOS(PUBLIC_SHARE,USER_SHARE,FRIEND_SHARE,PHOTO_TITLE,PHOTO_REMARK,PHOTO_STATUS)" + " VALUES (@PUBLIC_SHARE,@USER_SHARE,@FRIEND_SHARE,@PHOTO_TITLE,@PHOTO_REMARK,@PHOTO_STATUS WHERE DETAIL_ID='"+type_id+"')";

        cmd.Parameters.AddWithValue("@PUBLIC_SHARE", pub);
        cmd.Parameters.AddWithValue("@USER_SHARE", user);
        cmd.Parameters.AddWithValue("@FRIEND_SHARE", friend);
        cmd.Parameters.AddWithValue("@PHOTO_TITLE", photo_title);
        cmd.Parameters.AddWithValue("@PHOTO_REMARK", photo_remark);
        cmd.Parameters.AddWithValue("@PHOTO_STATUS", 1);


but it gives error near where clause.plz help me?
Posted
Updated 25-Nov-12 18:17pm
v2
Comments
dimpledevani 25-Nov-12 23:52pm    
insert cannot be used with where
Member 9027346 26-Nov-12 0:19am    
yes,bt i want to add all details according to type id?
Bhushan Shah1988 26-Nov-12 0:08am    
you cannot use where with INSERT.

The answer is very simple.

You can not use a where clause with insert query. Why? Because an insert creates a new record and it will be created at the bottom of the table only.

If you wish to change some existing value use Update instead of Insert.
 
Share this answer
 
v2
Comments
scottgp 26-Nov-12 10:03am    
"created at the bottom of the table only" doesn't make any sense
sinhasourabh says right ,you can't add where clouse in insert query ,becouse insert query add new record in database
 
Share this answer
 
Hi,

As everyone said, you can not use Where clause in Insert statement. but you want to add detail according to the type_id, so i suggest you to create one StoredProcedure.

This stored procedure will take the input and it will check for the Type_id in the database
1) if type_id record exist then update the record.
2) otherwise add new record with type_id.

Above case will apply only if your type_id is identity element.

Hope i answered your query.
 
Share this answer
 
Comments
[no name] 26-Nov-12 23:56pm    
I am not able to understand your answer completely. is it like this :

if row_exists then
' run update
else
' run insert
AmitGajjar 26-Nov-12 23:59pm    
Yes because if you have identity value of type_id then you can not insert similar value in the table you can only do the update of the record. let me know if it is not clear.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900