c#对数据库进行插入

请教一下
使用c#对数据库进行插入
commText="insert into table(id) values({textBox1.Text})";
数据库插入数据为textBox1.Text,而非输入的文本。
请问为什么读取不到输入的文本值呢?
感谢

直接这样写肯定不行啊,你在左引号的前面加上一个 $ 就行了,表示模板字符串。

【以下回答由 GPT 生成】

在C#中使用INSERT语句将用户输入的文本值插入到数据库中,你需要进行一些改进。下面是一种可能的解决方案:

  1. 首先,要确保你在使用INSERT语句时,使用了正确的语法。在你提供的代码中,你需要使用单引号将文本值括起来,如下所示:
string commText = $"insert into table(id) values('{textBox1.Text}')";
  1. 其次,要确保你对用户输入的文本值进行了适当的验证和清理。在我们将用户输入直接插入到数据库之前,最好进行一些处理,以减少潜在的安全问题。你可以使用参数化查询来防止SQL注入攻击和其他安全问题。以下是使用参数化查询的一个例子:
string commText = "insert into table(id) values(@id)";
SqlCommand command = new SqlCommand(commText, connection); // 这里的 connection 是你的数据库连接
command.Parameters.AddWithValue("@id", textBox1.Text);
  1. 最后,确保你已经打开了数据库连接,并在执行插入语句之后关闭了连接。以下是一个完整的例子:
// 假设你已经建立了一个叫做 connection 的数据库连接对象
string commText = "insert into table(id) values(@id)";
using(SqlCommand command = new SqlCommand(commText, connection))
{
    command.Parameters.AddWithValue("@id", textBox1.Text);
    connection.Open();
    command.ExecuteNonQuery();
    connection.Close();
}

以上是一种使用INSERT语句将用户输入的文本值插入到数据库的解决方案。希望对你有所帮助!如果你有任何进一步的问题,请随时提问。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

.net framework的版本太低了,不能使用$符号。
commText="insert into table(id) values (' "+textBox1.Text+" ')"