c# - my insert command not changing the database when using through programming -
when inserting values query database inserting when doing coding won't insert although show successful. im using c# 2010 , 2012 both not adding code
con.open(); cmd = new sqlcommand("insert main_2(name,nic,na_id,ps_id) values('" + name + "','" + nic + "',(select na_id nationalassembly name='" + na_name + "'),(select ps_id provisionalassembly name='" + ps_name + "'))", con); cmd = new sqlcommand("update provisionalassembly set count=+1 name='" + ps_name + "'", con); cmd = new sqlcommand("update nationalassembly set count=+1 name='" + na_name + "'", con); cmd.executenonquery(); con.close();
sqlcommand
class, means reference types.
everytime create new sqlcommand
object , assing cmd
reference. means lastly sqlcommand
executes. first 2 sqlcommand
doesn't have reference anymore in memory when execute executenonquery
method.
if want execute these commands, need execute separately each command.
and please utilize parameterized queries. kind of string concatenations open sql injection attacks.
also utilize using statement dispose database connections.
using(sqlcommand cmd = new sqlcommand(yourinsertstatement)) { con.open(); cmd.executenonquery(); cmd.commandtext = yourfirstupdatestatement; cmd.executenonquery(); cmd.commandtext = yoursecondupdatestatement; cmd.executenonquery(); }
c# mysql .net visual-studio-2010 sql-server-2008
No comments:
Post a Comment