我有两个表,User 和 UserReputation。我想用 SqlDataAdapter 获取数据。
SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=abc.com;Integrated Security=True");
SqlDataAdapter userDataAdapter = new SqlDataAdapter("SELECT * FROM User", conn);
SqlDataAdapter userReputationDataAdapter = new SqlDataAdapter("SELECT * FROM UserReputation", conn);
DataSet ds = new DataSet();
userDataAdapter.Fill(ds, "User");
userReputationDataAdapter.Fill(ds, "UserReputation");
我测试了连接字符串和连接。没有问题。但是我在 userDataAdapter.Fill(ds, "User");
An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll
Additional information: Incorrect syntax near the keyword 'User'.
谢谢你的帮助
最佳答案
将您的查询更改为以下内容:
"SELECT * FROM [User]"
User
是一个关键字,如果你有 Table
命名为“User”你应该使用方括号
或者正如@Rahul 提到的,您也可以使用 ""
:
"SELECT * FROM \"User\""
关于c# - SqlDataAdapter 填充错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45117049/