private void button4_Click_1(object sender, EventArgs e)
{
string s = textBox1.Text;
string s1 = comboBox1.Text;
string s2 = comboBox2.Text;
SqlCeConnection conn = new SqlCeConnection(@"Data Source=D:\Desktop\DB2\DB2\Database1.sdf");
try
{
conn.Open();
SqlCeCommand cmd = new SqlCeCommand(" update Kambariai set Klientas=[s] Where [Kambario rūšis]=[s1] ", conn);
cmd.ExecuteNonQuery();
toolStripStatusLabel1.Text = "Duomenys įrašyti";
conn.Close();
}
catch (Exception ee)
{
MessageBox.Show(ee.Message);
}
}
我正在尝试使用Klientas
更新textbox1.Text
值来更新我的数据表,该值string = s
。它应该可以正常工作但是我得到一个错误,指出列名无效Column = s1
。不应将s1
定位为列名,而应将其用作列行值。
这是过时的图像Kliento ID更改为Klientas
答案 0 :(得分:1)
试试这个:
SqlCeCommand cmd = new SqlCeCommand("update Kambariai set Klientas="+s+" Where [Kambario rūšis]='"+s1+"' ", conn);
<强>分析:强>
根据您的尝试,cmd
的价值如下:
update Kambariai set Klientas=s Where [Kambario rūšis]=s1
通过在其周围放置适当的双引号和单引号,值将如下:
update Kambariai set Klientas=1 Where [Kambario rūšis]='bar'
旁注:
我不推荐这种方法,因为它增加了SQL注入的风险。改为使用参数化查询。
答案 1 :(得分:1)
试试这个:
SqlCeCommand cmd = new SqlCeCommand(" update Kambariai set Klientas='" + s +"' Where [Kambario rūšis]='" + s1 + "'", conn);