Nic*_*ick 2 c# sql sql-server visual-studio-2010
这是我非常简单的选择声明:
select * from ProductDimensions where Item='100-1000'
当输入SSMS时,它会查询并返回结果.在VS中运行我的程序时,它什么都不返回.没有连字符的项目返回正常.是否需要一些特殊的语法才能使用我的C#代码?
C#代码:
adapter = new SqlDataAdapter("select * from ProductDimensions where Item='100-1000'", conn);
adapter.Fill(dataSet);
Run Code Online (Sandbox Code Playgroud)
就像我说的,如果我输入一个没有连字符的数字,例如'1000',它就可以了.
尝试使用参数化的SQL字符串,你将避免像这样的问题,以及SQL注入之类的其他问题:
adapter = new SqlDataAdapter("select * from ProductDimensions where Item=@Item";
adapter.Parameters.Add("@Item", SqlDbType.NChar, 15, "100-1000");
Run Code Online (Sandbox Code Playgroud)
(你可能需要调整SqlDbType和长度)
| 归档时间: |
|
| 查看次数: |
1467 次 |
| 最近记录: |