c# - Overflow error when use OleDbCommand.ExecuteNonQuery() -
i utilize microsoft.ace.oledb.12.0 insert info in access database.
my code:
oledbconnection conn = new oledbconnection(); conn.connectionstring = @"provider=microsoft.ace.oledb.12.0;data source=d:\sources\myproject\app_data\tax\ttms.mdb"; conn.open(); oledbcommand command1 = new oledbcommand("insert table 1(value1,value2,value3,value4,value5,value6,value7,value8,value9,value10) values (@value1,@value2,@value3,@value4,@value5,@value6,@value7,@value8,@value9,@value10)", conn) oledbcommand command2 = new oledbcommand("insert table 2(value11,value12,value13,value14,value15,value16,value17) values (@value11,@value12,@value13,@value14,@value15,@value16,@value17)", conn) sqldatareader droledb = getdata(); if (droledb.hasrows) { while (droledb.read()) { if(table1) { command1.parameters.add("value1", oledbtype.integer).value = value1; command1.parameters.add("value2", oledbtype.integer).value = value2; command1.parameters.add("value3", oledbtype.integer).value = value3; command1.parameters.add("value4", oledbtype.integer).value = value4; command1.parameters.add("value5", oledbtype.integer).value = value5; command1.parameters.add("value6", oledbtype.integer).value = value6; command1.parameters.add("value7", oledbtype.integer).value = value7; command1.parameters.add("value8", oledbtype.integer).value = value8; command1.parameters.add("value9", oledbtype.integer).value = value9; command1.parameters.add("value10", oledbtype.integer).value = value10; command1.executenonquery(); } else(table2) { command2.parameters.add("value11", oledbtype.integer).value = value11; command2.parameters.add("value12", oledbtype.integer).value = value12; command2.parameters.add("value13", oledbtype.integer).value = value13; command2.parameters.add("value14", oledbtype.integer).value = value14; command2.parameters.add("value15", oledbtype.integer).value = value15; command2.parameters.add("value16", oledbtype.integer).value = value16; command2.parameters.add("value17", oledbtype.integer).value = value17; command2.executenonquery(); } } } command1.executenonquery(); works command2.executenonquery(); not work , error:
[message] overflow stacktrace:
at system.data.oledb.oledbcommand.executecommandtexterrorhandling(oledbhresult hr) @ system.data.oledb.oledbcommand.executecommandtextforsingleresult(tagdbparams dbparams, object& executeresult) @ system.data.oledb.oledbcommand.executecommandtext(object& executeresult) @ system.data.oledb.oledbcommand.executecommand(commandbehavior behavior, object& executeresult) @ system.data.oledb.oledbcommand.executereaderinternal(commandbehavior behavior, string method) @ system.data.oledb.oledbcommand.executenonquery() @ total_pgtest3.btnok_click(object sender, eventargs e) in d:\sources\myproject\total\pgtest3.aspx.cs:line 200 @ system.web.ui.webcontrols.button.onclick(eventargs e) @ system.web.ui.webcontrols.button.raisepostbackevent(string eventargument) @ system.web.ui.webcontrols.button.system.web.ui.ipostbackeventhandler.raisepostbackevent(string eventargument) @ system.web.ui.page.raisepostbackevent(ipostbackeventhandler sourcecontrol, string eventargument) @ system.web.ui.page.raisepostbackevent(namevaluecollection postdata) @ system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint) thanks.
c# oledb oledbcommand
No comments:
Post a Comment