Microsoft OLE DB Provider for SQL Server 错误 '80040e14'
在此上下文中不允许使用 'False'。此处只允许使用常量、表达式或变量。不允许使用列名。
/asp163/Admin_Advertisement.asp,行 296
程序代码如下
292行
if IsFlash="" then IsFlash=0
292行
if IsSelected="" then IsSelected=0
293行
if IsSelected="True" then conn.execute "Update Advertisement set IsSelected=0 where IsSelected=1"
294行
sql="Insert Into Advertisement (SiteName,SiteUrl,SiteIntro,ImgUrl,ImgWidth,ImgHeight,IsFlash,IsSelected) values ('" & SiteName & "','" & SiteUrl & "','" & SiteIntro & "','" & ImgUrl & "'," & ImgWidth & "," & ImgHeight & "," & IsFlash & "," & IsSelected & " )"
296行
conn.execute sql
5 个解决方案
#1
在296行之前加上
response.write sql
response.end
看看实际的sql是什么。怀疑你定义的IsFlash和IsSelected都是布尔型,
直接赋值0或者1,是OK的,但是你形成一个SQL语句往数据库里插,
就有可能出现 True 或者 False这样的字。
SQL Server是不允许插入True或者False这样的字的,
即便是bit型的字段,也需要用0或者1插入。
response.write sql
response.end
看看实际的sql是什么。怀疑你定义的IsFlash和IsSelected都是布尔型,
直接赋值0或者1,是OK的,但是你形成一个SQL语句往数据库里插,
就有可能出现 True 或者 False这样的字。
SQL Server是不允许插入True或者False这样的字的,
即便是bit型的字段,也需要用0或者1插入。
#2
把conn.execute sql执行的sql打印出来。
可能是语句有问题。
可能是语句有问题。
#3
Insert Into Advertisement (SiteName,SiteUrl,SiteIntro,ImgUrl,ImgWidth,ImgHeight,IsFlash,IsSelected) values ('c','http://www.jaya.cn','fgh','fgh',480,60,False,True )
这是response.write sql执行后的语句
但是语句怎么写才正确呢
这是response.write sql执行后的语句
但是语句怎么写才正确呢
#4
292行
if IsFlash<>"True" then
IsFlash=0
else
IsFlash=1
end if
292行
if IsSelected<>"True" then
IsSelected=0
else
IsSelected=1
end if
293行
if IsSelected=1 then conn.execute "Update Advertisement set IsSelected=0 where IsSelected=1"
if IsFlash<>"True" then
IsFlash=0
else
IsFlash=1
end if
292行
if IsSelected<>"True" then
IsSelected=0
else
IsSelected=1
end if
293行
if IsSelected=1 then conn.execute "Update Advertisement set IsSelected=0 where IsSelected=1"
#5
谢谢楼上的哥,问题已经解决.
忽略了程序!
忽略了程序!
#1
在296行之前加上
response.write sql
response.end
看看实际的sql是什么。怀疑你定义的IsFlash和IsSelected都是布尔型,
直接赋值0或者1,是OK的,但是你形成一个SQL语句往数据库里插,
就有可能出现 True 或者 False这样的字。
SQL Server是不允许插入True或者False这样的字的,
即便是bit型的字段,也需要用0或者1插入。
response.write sql
response.end
看看实际的sql是什么。怀疑你定义的IsFlash和IsSelected都是布尔型,
直接赋值0或者1,是OK的,但是你形成一个SQL语句往数据库里插,
就有可能出现 True 或者 False这样的字。
SQL Server是不允许插入True或者False这样的字的,
即便是bit型的字段,也需要用0或者1插入。
#2
把conn.execute sql执行的sql打印出来。
可能是语句有问题。
可能是语句有问题。
#3
Insert Into Advertisement (SiteName,SiteUrl,SiteIntro,ImgUrl,ImgWidth,ImgHeight,IsFlash,IsSelected) values ('c','http://www.jaya.cn','fgh','fgh',480,60,False,True )
这是response.write sql执行后的语句
但是语句怎么写才正确呢
这是response.write sql执行后的语句
但是语句怎么写才正确呢
#4
292行
if IsFlash<>"True" then
IsFlash=0
else
IsFlash=1
end if
292行
if IsSelected<>"True" then
IsSelected=0
else
IsSelected=1
end if
293行
if IsSelected=1 then conn.execute "Update Advertisement set IsSelected=0 where IsSelected=1"
if IsFlash<>"True" then
IsFlash=0
else
IsFlash=1
end if
292行
if IsSelected<>"True" then
IsSelected=0
else
IsSelected=1
end if
293行
if IsSelected=1 then conn.execute "Update Advertisement set IsSelected=0 where IsSelected=1"
#5
谢谢楼上的哥,问题已经解决.
忽略了程序!
忽略了程序!