我发现我机子上用C#编程的时候,
在DATASET用查询生成器建立查询的时候,
SELECT BookID, BookName, TypeName, Press, PressDate, Author, Price
FROM book
WHERE (bookname like @bookname)@bookname我明明输入的@和bookname之间是没有空格的,
然后就会报错
说是"@"附近的WHERE子句错误.无法分析查询文本.
接着还有一个报错
SQL执行错误
已执行SQL语句:select bookid,bookname,typename,press,pressdate,author,price from book
where(bookname like @bookname)
错误源:SQLSRV32.DLL
错误信息:ERROR [42000][Microsoft][ODBC SQL Server Driver][SQL Server]必须声明标量变量"@bookname" 然后点确实以后,本来是@bookname就会变成@ bookname,
我不知道是怎么回事,
我的一位朋友,
他就不会出现这种问题,
是好好的,
不知道怎么回事,
知道的告诉一声,
谢谢了.
在DATASET用查询生成器建立查询的时候,
SELECT BookID, BookName, TypeName, Press, PressDate, Author, Price
FROM book
WHERE (bookname like @bookname)@bookname我明明输入的@和bookname之间是没有空格的,
然后就会报错
说是"@"附近的WHERE子句错误.无法分析查询文本.
接着还有一个报错
SQL执行错误
已执行SQL语句:select bookid,bookname,typename,press,pressdate,author,price from book
where(bookname like @bookname)
错误源:SQLSRV32.DLL
错误信息:ERROR [42000][Microsoft][ODBC SQL Server Driver][SQL Server]必须声明标量变量"@bookname" 然后点确实以后,本来是@bookname就会变成@ bookname,
我不知道是怎么回事,
我的一位朋友,
他就不会出现这种问题,
是好好的,
不知道怎么回事,
知道的告诉一声,
谢谢了.
like '%ab%'或like 'ab'
insert into # select 'abc'declare @name varchar(50)
set @name='c'
exec('
select * from #
where s like''%'+ @name +'%''')使用变量要用exec了,如果用c#,最好就拼好了,要不用sql会乱
什么问题?直接写@name肯定是不行的,
declare @name varchar(50)
set @name='c'
用过这个了,
照样没用
在C# dataset的查询生成器中生成的..
DataColumn col1 = new DataColumn("id", typeof(string));
DataColumn col2 = new DataColumn("name", typeof(string));
dt.Columns.Add(col1);
dt.Columns.Add(col2);
DataRow row1 = dt.NewRow();
row1["id"] = "0001";
row1["name"] = "aaa";
dt.Rows.Add(row1); DataRow row2 = dt.NewRow();
row2["id"] = "0002";
row2["name"] = "bbb";
dt.Rows.Add(row2); string name = "b";
Response.Write(dt.Select("name like'%" + name + "'", "")[0]["name"].ToString());是这个吗?