【发布时间】:2018-01-28 17:25:42
【问题描述】:
我只想在 SQL Server 数据库中插入一些条目。但我需要在插入前检查。关键是该表包含id 和name 两列。如果条目与 SQL Server 数据库中的条目完全相同,则显示的代码应检查这两列并阻止插入条目。
表示数据表的两列与要插入的两个条目相同。我检查了论坛,但找不到对我的项目有用的解决方案。
private void button4_Click(object sender, EventArgs e)
{
try
{
objConnection.Open();
string query = "INSERT INTO TutorTable(Tid, Tname) VALUES(N'" + tidTextBox.Text + "','" + tnameTextBox.Text + "')";
SqlDataAdapter SDA = new SqlDataAdapter(query, objConnection);
SDA.SelectCommand.ExecuteNonQuery();
objConnection.Close();
MessageBox.Show("ok!");
}
catch(Exception ex)
{
MessageBox.Show("error");
}
objConnection.Close();
}
【问题讨论】:
-
请阅读 SqlCommandParameters。您的 SQL 语句对 sql 注入攻击开放
-
学习使用参数并用您正在使用的数据库标记您的问题。
-
@rene 安全问题不在我的考虑范围之内。我只想在插入之前检查重复的数据
-
您已经尝试了哪些想法?就像做一个 SELECT 来查看记录是否已经存在或在 sql 端应用约束。