visual studio 2008 C# SQL插入数据出错,提示第一行“123”附近有错

来源:百度知道 编辑:UC知道 时间:2024/05/11 05:23:55
程序运行后,提示第一行123附近有语法错误。。谢了。。急~
private void button1_Click(object sender, EventArgs e)
{
string constr = "Provider=SQLOLEDB.1;Persist Security Info = False;user id=sa;pwd=123456;Initial Catalog=123;Data Source=(local)";
OleDbConnection con = new OleDbConnection(constr);
con.Open();
string sqlstr = "insert into 123 (x,y) values('";
sqlstr += textBox1.Text + "','";
sqlstr += textBox2.Text + "')";
OleDbCommand mycom = new OleDbCommand(sqlstr,con);
mycom.ExecuteNonQuery();
con.Close();
con.Dispose();
}
错误信息:
未处理 System.Data.OleDb.OleDbException
Message="第 1 行: '123' 附近有语法错误。"
Source="Microsoft OLE DB Provider for SQL Server"
ErrorCode=-2147217900
StackTrace:

捕获sqlstr 先在查询管理器里面试试 !

'123' 附近有语法错误 ----- 检查SQL语句,字段类型 ,字符型的加单引号,数字型的不加

应该是你的连接串有问题
改成这个试试
string constr = "server=.;database=数据库名;uid=sa;pwd=123456";

string constr = "Provider=SQLOLEDB.1;Persist Security Info = False;user id=sa;pwd=123456;Initial Catalog=123;Data Source=(local)";

Initial Catalog=123 这里不要写数据库中表的名字,要写数据库的名字。

就是生成的SQL语句问题
你把生成之后的SQL语句 TEXTBOX显示出来
然后 把TEXTBOX 里的SQL语然放在SQL2000里执行