C#插入数据到sqlserver数据库

TextBox1=textBox1.Text.Trim();TextBox2=textBox2.Text.Trim();TextBox3=textBox3.Text.Su... TextBox1 = textBox1.Text.Trim();
TextBox2 = textBox2.Text.Trim();
TextBox3 =textBox3.Text.Substring(0, textBox3.Text.IndexOf(" "));
TextBox4 = textBox3.Text.Substring(textBox3.Text.IndexOf(" "));
con.Open();
string str = @"insert into node_treeview(node_name,ll_addr,mapX,mapY) values (TextBox1,TextBox2,TextBox3,TextBox4)";
SqlCommand command = new SqlCommand(str,con);
command.ExecuteNonQuery();
为何插入不进去,怎么把TextBox1,2,3,4的值赋值给sql语句
展开
 我来答
syht2000
高粉答主

推荐于2016-07-02 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.4亿
展开全部

你这样连编译都通不过,应该是

TextBox1.Text = textBox1.Text.Trim();
 TextBox2.Text = textBox2.Text.Trim();
 TextBox3.Text =textBox3.Text.Substring(0, textBox3.Text.IndexOf(" "));
 TextBox4.Text = textBox3.Text.Substring(textBox3.Text.IndexOf(" "));
 con.Open();
 string str = string.Format(@"insert into node_treeview(node_name,ll_addr,mapX,mapY) values ('{0}','{1}','{2}','{3}')",TextBox1.Text,TextBox2.Text,TextBox3.Text,TextBox4.Text);
 SqlCommand command = new SqlCommand(str,con);
 command.ExecuteNonQuery();


或者直接就是

con.Open();

 string str = string.Format(@"insert into node_treeview(node_name,ll_addr,mapX,mapY) values ('{0}','{1}','{2}','{3}')",textBox1.Text.Trim(),textBox2.Text.Trim(),textBox3.Text.Substring(0, textBox3.Text.IndexOf(" ")),textBox3.Text.Substring(textBox3.Text.IndexOf(" ")));
 SqlCommand command = new SqlCommand(str,con);
 command.ExecuteNonQuery();
追问
哦,我都不知道为啥这么写哦,好像mysql这样写没问题,sqlserver这么烦啊
追答
你如果是用C#连接的mysql,写法基本一样的,注意我不清楚你的数据库里的字段倒底是什么类型的,如果数字库里字段比如说node_name是数字,那node_name对应的'{0}'的单引号就要去掉,变成{0}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式