我只是在c#中创建一个windows表单,我可以在其中插入,更新和删除数据。
我想在URDU文本中插入数据。我完成了使用以下代码插入数据:
SqlCommand cmd = new SqlCommand("insert into tblTeams values (@ID, @SchoolName, @TeamName)", con);
cmd.Parameters.AddWithValue("@ID", txtBoxID.Text);
cmd.Parameters.AddWithValue("@SchoolName", txtBoxSName.Text);
cmd.Parameters.AddWithValue("@TeamName", txtBoxTName.Text);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
但是当试图更新数据时没有任何线索如何做到这一点......
SqlDataAdapter sda = new SqlDataAdapter("update tblTeams set SchoolName='"+txtBoxSName.Text+"',TeamName='"+txtBoxTName.Text+"'where ID='"+txtBoxID.Text+"' ", con);
con.Open();
sda.SelectCommand.ExecuteNonQuery();
con.Close();
上面的代码更新数据库但不在URDU中,仅在数据库中更新" ?????"示...
在SQL server中,所有插入,更新和删除都有效,但我想在前端进行...
表格设计也附有...... enter image description here
提前致谢!
答案 0 :(得分:0)
也完成更新并感谢您的支持...... 这是代码:
SqlCommand cmd = new SqlCommand("update tblTeams set SchoolName=@SchoolName, TeamName=@TeamName where ID=@ID ", con);
cmd.Parameters.AddWithValue("@ID", txtBoxID.Text);
cmd.Parameters.AddWithValue("@SchoolName", txtBoxSName.Text);
cmd.Parameters.AddWithValue("@TeamName", txtBoxTName.Text);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
答案 1 :(得分:-1)
这很有可能发生,因为您的列不支持Unicode。您需要在列中使用nvarchar
或nchar
。
或者,您的TextBox
不支持unicode
文字。尝试使用其他字体,例如Arial。
请勿使用不带参数的更新代码。它容易受到SQL注入攻击。相反,在两者中使用参数,就像在第一个中一样。
最后,您可以使用N'urdutexthere'
为插入值添加前缀,如下所示:
SqlCommand cmd = new SqlCommand("UPDATE tblTeams SET SchoolName=N'@SchoolName',TeamName=N'@TeamName' WHERE ID='@ID'", con);
cmd.Parameters.AddWithValue("@ID", txtBoxID.Text);
cmd.Parameters.AddWithValue("@SchoolName", txtBoxSName.Text);
cmd.Parameters.AddWithValue("@TeamName", txtBoxTName.Text);
con.Open();
cmd.ExecuteNonQuery();
con.Close();