环境sql server 2005, vs2005写了一个查询的sql语句,
比如select * from emp order by @sortMethod,用SqlDataAdapter返回DataSet, 想把排序方式做为一个参数写进去,即
mySqlDataAdapter.SelectCommand.Parameters.Add("@sortMethod", SqlDbType.VarChar).Value = myPageSetting.SortMethod;但是总报sql出错,跟踪了下,发现就问题就在order by的参数上,怀疑变成了
select * from emp order by 'desc'怎么处理,各位有好的解决办法吗?
比如select * from emp order by @sortMethod,用SqlDataAdapter返回DataSet, 想把排序方式做为一个参数写进去,即
mySqlDataAdapter.SelectCommand.Parameters.Add("@sortMethod", SqlDbType.VarChar).Value = myPageSetting.SortMethod;但是总报sql出错,跟踪了下,发现就问题就在order by的参数上,怀疑变成了
select * from emp order by 'desc'怎么处理,各位有好的解决办法吗?
解决方案 »
- 求:asp.net 实现类似管家婆的采购单那样效果,和原理
- asp.net做流媒体视频播放网站求助。。。
- Sql查询提问
- {0:f2}为何不起作用,小数点位数还是很多。gridview里面的数据都是通过Sql计算得到的。问如何解决
- 问两个问题~~关于可空类型与membership,谢谢大家
- 请问如何加上这样的验证?
- 我的用户控件里有一个登陆表单,主页面里也有一个表单,都有验证控件,现在我从用户控件中登陆的时候和主页面中的验证控件发生冲突怎么办
- 用户控件传递参数问题,大家进来看看
- 帮我看看这是个什么空间形成
- B为A的一个iframe,在B中如何控制A中的toolbarButton
- .net c# 坐标画图
- 在。NET中,做WEB开发时,类库文件中的异常如何以对话框的形式显示到页面上,就跟在页面中捕获异常一样?
也可以用StringBuilder自己组装字符串,应该就行
mySqlDataAdapter.SelectCommand.Parameters.Add("@sortMethod", SqlDbType.VarChar).Value = "myPageSetting.SortMethod";
这样不行啊
sqlBuilder.Append(" and rownum between @startRow and @endRow ");
sqlBuilder.Append(" order by EnterpriseID ");
sqlBuilder.Append( myPageSetting.SortMethod);//mySqlDataAdapter.SelectCommand.Parameters.Add("@sortMethod", SqlDbType.VarChar).Value = myPageSetting.SortMethod;
这样可以,但是感觉很不爽,
因为我一大堆变量在下面一起Parameters.Add的,
单单这一个要放到sqlBuilder里面去,太不完美了
啊哈,这个你也想得出来啊?!你的参数查询不是都是用在常量数值上吗?你这里可是字段名啊!如果一定要通过参数提交一个变量,那么你的sql中就只能出现类似这样的语句了declare @sql nvarchar(100)
set @sql='select * from emp order by '+@sortMethod
.......
没用存储过程,我想传 asc 或者 desc 进sql中去,
但是mySqlDataAdapter.SelectCommand.Parameters.Add()方法总给这两个关键字加引号
用返回的dataTable.select("字段",“desc ”);
ok了,而且性能好