如何在sql server查询中使用整数变量?

问题描述 投票:-3回答:3

我有一个mysql查询的问题。我在sql server中有一个数据库。

int number = int.Parse(textbox.Text);
var sqlconn = new SqlConnection(@"Server=(localdb)\MSSQLLocalDB; AttachDbFileName=|DataDirectory|db.mdf;");
sqlconn.Open();
var sqlcomm = new SqlCommand("SELECT * FROM table WHERE title = number", sqlconn);

这个的正确语法是什么:title = number?

c# sql-server
3个回答
0
投票

您可以通过执行以下操作添加整数内联

var sqlcomm = new SqlCommand("SELECT * FROM table WHERE title = " + number.ToString(), sqlconn);

或者您可以将其添加为如下参数:

var sqlcomm = new SqlCommand("SELECT * FROM table WHERE title = @num", sqlconn);
sqlcomm.Parameters.AddWithValue("@num", number);

2
投票

我建议使用参数来避免qazxsw poi。

可能看起来像这样。

SQL Injection

0
投票

这是一个非常基本的问题,只需谷歌即可轻松解决。

无论如何,你想在这里使用参数化的SQL命令。

using (SqlCommand command = new SqlCommand("SELECT * FROM table WHERE title = @Number", connection))
{
    command.Parameters.Add(new SqlParameter("@Number", int.Parse(textbox.Text)));

    //read data
}
© www.soinside.com 2019 - 2024. All rights reserved.