是否可以将表名添加到文本框值的select语句中

时间:2013-08-16 16:30:01

标签: sql sql-server select

我正在使用Visual Studio 2008和SQL Server 2008。 我试图从文本框值中提供tablename,如下所示:

SqlCommand comm = new SqlCommand("select * from '"+Textbox1.Text+"'", conn);

但我没有得到任何结果。

请帮帮我。我在这做错了什么?

2 个答案:

答案 0 :(得分:1)

您将表名用单引号括起来,不应该。但除此之外,你很容易受到SQL Injection attacks的攻击。不要使用字符串连接来构建sql语句。

如果您执行以下操作,您的代码将起作用(但不要使用此方法):

SqlCommand comm = new SqlCommand("select * from "+Textbox1.Text+"", conn);

答案 1 :(得分:1)

回答问题:

在Studio中,您需要通过调用

来执行命令
sqlConn.Open();
sqlcmd = new SqlCommand("SELECT * FROM " + Textbox1.text + "", sqlConn);
sqlcmd.ExecuteNonQuery();
sqlConn.Close();

但是:

阅读SQL注入这根本不安全。