sql查询语句-----在线等!!!
我有一个表software表里有ID,software_type字段,其中software_type字段类型为nvarchar
我在程序里写有以下代码:
string software_type="系统程序";
string strSql="select count(*) as typeRecord from software where software_type="+software_type ;
但执行时总提示以下出错:
列名 '系统程序' 无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 列名 '系统程序' 无效。
源错误:
行 74: SqlCommand objCmd=new SqlCommand(strSql,objConn);
行 75: objConn.Open ();
行 76: objDReader=objCmd.ExecuteReader ();
行 77: if(objDReader.Read())
行 78: RecordCount=Int32.Parse(objDReader["typeRecord"].ToString());
不知道如何修改,请问是不是SQL语句出错!或者如何修改
问题点数:50、回复次数:6Top
1 楼andrew1230()回复于 2006-03-09 12:21:12 得分 18
string strSql="select count(*) as typeRecord from software where software_type='"+software_type+"'";Top
2 楼dnboy(computerboy)回复于 2006-03-09 12:24:54 得分 3
同意楼上Top
3 楼minajo21(大眼睛)回复于 2006-03-09 12:25:32 得分 3
同意楼上,单引号Top
4 楼lizi02(冬虫夏草)回复于 2006-03-09 12:27:25 得分 12
string strSql="select count(*) as typeRecord from software where software_type='"+software_type+"'";
恩 这样就可以了
只要是string相关类型的 都需要用'
int不要用',直接用"Top
5 楼youyuan1980(水云间)回复于 2006-03-09 12:28:05 得分 7
string strSql="select count(*) as typeRecord from software where software_type='"+software_type+"'" ;
字符型用'"+字符型变量+"'
数字型用"+数字型变量+"Top
6 楼flashicp(flashicp)回复于 2006-03-09 12:37:15 得分 7
string strSql="select count(*) as typeRecord from software where software_type="'"+software_type +"'";
字符型用'"+字符型变量+"'
数字型用"+数字型变量+"
都用这种不会错的,因为sql会自动的去转化为相关格式用'"+字符型变量+"'Top




