【发布时间】:2012-12-16 17:54:43
【问题描述】:
string user = "1234";
string strSQL = string.Format("Select * From User where UserId = '{0}'",user);
SqlCommand myCommand = new SqlCommand(strSQL, cnn);
reader = myCommand.ExecuteReader();
我的User 表由UserId 和Password 列组成。 UserId 列类型是 nchar,所以我使用了单引号。我收到一个错误提示
关键字“用户”附近的语法不正确
(我猜这里引用了表名User)。
我有正确的连接字符串和其他与数据库环境相关的东西,因为我已经检查了数据库连接状态并且它是打开的(在程序执行期间)。
语法有什么错误?我无法从我的表中检索行。
【问题讨论】:
-
在你的 SQL 命令行上打一个断点并获取 strSQL 的值,然后复制字符串值并将其粘贴到 SSMS 中。执行并检查查询。如果没有表格的设计,就很难诊断出语法错误是什么。
标签: c# sql-server select