在c#底下写了一个sql语句,在查询分析器里面调试没有问题,但是在vs2005底下总有问题,麻烦高手指点下,整个查询函数代码如下:
public DataSet CheckMyLoad(string fileName, string fileLibrary, string fileMytimefrom, string fileMytimeto,int pageNum)//与数据库比较,返回比较结果
{
int pageNumAll = pageNum * 10;
int pageNumNotin = (pageNum - 1) * 10;
string strSql = " select TOP " +
pageNumAll +
" TB_FileInfo.FileName,TB_Store.StoreName,TB_FileInfo.FileType,TB_FileInfo.UpLoadDate,TB_FileInfo.FileState " +
" from TB_FileInfo left join TB_Store on TB_FileInfo.StoreID = TB_Store.StoreID where 1=1 ";
if(fileName!=""){ strSql+="AND TB_FileInfo.FileName='" +
fileName +
"'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary +
"'";}
if(fileMytimefrom !="") { strSql+="ADN TB_FileInfo.UpLoadDate >='" +
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="ADN TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +
"' ";}
strSql += "AND TB_FileInfo.FileName NOT IN ( select top " +
pageNumNotin +
" TB_FileInfo.FileName from TB_FileInfo left join TB_Store on TB_FileInfo.StoreID = TB_Store.StoreID where 1=1";
if(fileName!=""){ strSql+="AND TB_FileInfo.FileName='" +
fileName +
"'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary +
"'";}
if(fileMytimefrom !="") { strSql+="AND TB_FileInfo.UpLoadDate >='" +
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="AND TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +"'";}
strSql += ")"; //SQL语句
return dl.RunSql_ds(strSql, "connStrFile");
}
public DataSet CheckMyLoad(string fileName, string fileLibrary, string fileMytimefrom, string fileMytimeto,int pageNum)//与数据库比较,返回比较结果
{
int pageNumAll = pageNum * 10;
int pageNumNotin = (pageNum - 1) * 10;
string strSql = " select TOP " +
pageNumAll +
" TB_FileInfo.FileName,TB_Store.StoreName,TB_FileInfo.FileType,TB_FileInfo.UpLoadDate,TB_FileInfo.FileState " +
" from TB_FileInfo left join TB_Store on TB_FileInfo.StoreID = TB_Store.StoreID where 1=1 ";
if(fileName!=""){ strSql+="AND TB_FileInfo.FileName='" +
fileName +
"'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary +
"'";}
if(fileMytimefrom !="") { strSql+="ADN TB_FileInfo.UpLoadDate >='" +
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="ADN TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +
"' ";}
strSql += "AND TB_FileInfo.FileName NOT IN ( select top " +
pageNumNotin +
" TB_FileInfo.FileName from TB_FileInfo left join TB_Store on TB_FileInfo.StoreID = TB_Store.StoreID where 1=1";
if(fileName!=""){ strSql+="AND TB_FileInfo.FileName='" +
fileName +
"'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary +
"'";}
if(fileMytimefrom !="") { strSql+="AND TB_FileInfo.UpLoadDate >='" +
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="AND TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +"'";}
strSql += ")"; //SQL语句
return dl.RunSql_ds(strSql, "connStrFile");
}
解决方案 »
- c#的winform设计,设计好的界面,随便更改一下有关控件的属性,哪怕是text属性,许多布局值,比如size、location的值都变了,变的很离谱
- 用C#求十六进制字符串CRC校验值
- C# dataRepeater绑定dataset
- C# DevComponents.DotNetBar.TabControl
- 求基于ftp协议的实现不同用户登录ftp系统,并实现匿名登录
- asp.net如何在服务器端接收用xmlhttp传递过去的xml对象!
- WinForm上的画图问题:超出WinForm的Rect时的问题
- 怎样给程序加个图标,那样程序看起来好看点,
- 难题求解: 如何转化Html内容为Text纯文本格式?
- 1、如何将屏幕上的图像保存到文件中?(屏幕抓图软件的功能)2、如何通过程序实现控制鼠标单机、双击等输入操作?
- 怎么把form 放进tabpage里?
- c#编写论坛多帐号自动登陆机
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="ADN TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +
"' ";}
这里应该是and吧! 另外建议and 之前加一个空格
fileName +
"'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary +
"'";}
if(fileMytimefrom !="") { strSql+="ADN TB_FileInfo.UpLoadDate >='" +
fileMytimefrom +
"'";}
if(fileMytimeto!="") {strSql+="ADN TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +
"' ";} 楼主啊.
楼主的AND 前面都没有空格呀。
而且感觉引号是不是也多了。我真的眼花了,可能是幻觉!
错误 1 应输入 ) c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 62 60 http://localhost/9NiuMDL/
错误 2 类、结构或接口成员声明中的标记“,”无效 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 62 71 http://localhost/9NiuMDL/
错误 3 应输入标识符,“string”是关键字 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 62 96 http://localhost/9NiuMDL/
错误 4 应输入 ; c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 62 115 http://localhost/9NiuMDL/
错误 5 类、结构或接口成员声明中的标记“return”无效 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 73 9 http://localhost/9NiuMDL/
错误 6 类、结构或接口成员声明中的标记“(”无效 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 73 28 http://localhost/9NiuMDL/
错误 7 类、结构或接口成员声明中的标记“,”无效 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 73 35 http://localhost/9NiuMDL/
错误 8 应输入类型、命名空间定义或文件尾 c:\inetpub\wwwroot\9NiuMDL\Page\Show\MyUpload.aspx.cs 75 1 http://localhost/9NiuMDL/
pageNumAll.ToString() +" " +
" TB_FileInfo.FileName,TB_Store.StoreName,TB_FileInfo.FileType,TB_FileInfo.UpLoadDate,TB_FileInfo.FileState " + ........好乱 - -
strSql += "AND TB_FileInfo.FileName NOT IN ( select top " +
pageNumNotin +
" TB_FileInfo.FileName from TB_FileInfo left join TB_Store on TB_FileInfo.StoreID = TB_Store.StoreID where 1=1"; 这条语句包含一个子查询,里面缺了一个“)”,是在组合条件之后最后用
strSql += ")"; //SQL语句 来封闭的,但是看那几个组合条件语句的写法:
if(fileName!=""){ strSql+="AND TB_FileInfo.FileName='" +
fileName + "'" ;}
if(fileLibrary !=""){ strSql+="AND TB_FileInfo.StoreID='" +
fileLibrary + "'";}
if(fileMytimefrom !="") { strSql+="AND TB_FileInfo.UpLoadDate >='"
+ fileMytimefrom + "'";}
if(fileMytimeto!="") {strSql+="AND TB_FileInfo.UpLoadDate <= '" +
fileMytimeto +"'";}
其中的空格处理稍有不慎,最后就会导致错误语法,使后来的右括号无法封闭进来。所以初步看1=1 " 或者 AND之前应加空格。
恶。。