各位好!
关于SQL连接方面的问题,大家帮我看看,程序编译到object obj = cmd.ExecuteScalar();这句时,说我的SQL文附近有问题,
string gh = textBox1 .Text ;
string paw =textBox2 .Text ;
string cs = "dsn=changjj;server=(local);UID=sa;PWD=security_1";
OdbcConnection conn = new OdbcConnection(cs);
try
{
conn.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
if (gh.Trim () == "" && paw.Trim () == "") return;
string sql = @"insert into table_1(user,password) values ('" + gh + "','" +paw + "')";
OdbcCommand cmd = new OdbcCommand(sql, conn);
object obj = cmd.ExecuteScalar();
conn.Close (); Form temp = new FormMain();
temp.Show();
关于SQL连接方面的问题,大家帮我看看,程序编译到object obj = cmd.ExecuteScalar();这句时,说我的SQL文附近有问题,
string gh = textBox1 .Text ;
string paw =textBox2 .Text ;
string cs = "dsn=changjj;server=(local);UID=sa;PWD=security_1";
OdbcConnection conn = new OdbcConnection(cs);
try
{
conn.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
if (gh.Trim () == "" && paw.Trim () == "") return;
string sql = @"insert into table_1(user,password) values ('" + gh + "','" +paw + "')";
OdbcCommand cmd = new OdbcCommand(sql, conn);
object obj = cmd.ExecuteScalar();
conn.Close (); Form temp = new FormMain();
temp.Show();
设置断点看看sql的内容是什么
现在是插入语句用ExecuteNonQuery
改为int result = cmd.ExecuteNonQuery(); ExecuteScalar方法是针对select语句的,必须返回一行数据,然后取其第一列的值,你就一个insert语句,怎么能用ExecuteScalar方法啊。
错误信息:
ERROR [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]キーワード 'user' 付近に不適切な構文があります。
object obj = cmd.ExecuteScalar(); 执行到这一行,报错:
错误信息:
ERROR [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]キーワード 'user' 付近に不適切な構文があります。
去掉@符号,二楼三楼的你们别误导别人,插入就是用ExecuteScalar()
user是关键字,要用中括号括起来
如果你有自动增长的表识列,他会把你刚插入的数据的表识列ID显示出来!