access中sql语句语法错。。帮忙改下,谢谢

libin1985 2007-12-25 03:14:27
语法错误 (操作符丢失) 在查询表达式 '(case #专属# when #专属# then #=# else #> =# end)' 中。
SQL语句:Insert into NwebCn_About(NwebCn_About.AboutNameSi,NwebCn_About.AboutNameTr,NwebCn_About.AboutNameEn,
NwebCn_About.ViewFlagSi,NwebCn_About.ViewFlagTr,NwebCn_About.ViewFlagEn,NwebCn_About.ChildFlag,
NwebCn_About.GroupID,NwebCn_About.Exclusive,NwebCn_About.ContentSi,NwebCn_About.ContentTr,
NwebCn_About.ContentEn)
select #123123#,#123123#,#123123123#,#True#,#True#,#True#,#True#,
NwebCn_MemGroup.GroupID ,
(case #专属# when #专属# then #=# else #>=# end),
#123123#,#123123#,#123123# from NwebCn_MemGroup
where NwebCn_MemGroup.GroupNameSi =#商业用户#
...全文
135 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fcuandy 2007-12-25
  • 打赏
  • 举报
回复
.net下以传参的方式执行就可以了.跟sql的写法一样

string sql="insert tb select 1,2,@id";
cmd.pameters.add(......);
cmd.exe...;
只不过这里用的oledbcommand非sqlcommand.

这里就不是sql语法的问题了.


当然,你拼语句执行也可以的.

string sql="insert tb select 1,2," + id.ToString();
cmd.exe...;
如果是拼语句,注意参数检测一下.
libin1985 2007-12-25
  • 打赏
  • 举报
回复
谢谢,谢谢,非常感谢,再问一个问题。。我的sql语句是insert into tablename1 (a,b,c,d) select '11',
'22',tablename2.e,'444' from tablename2 where tablename.f = '变量';这个支持不?不支持的话该改成什么模式,再次麻烦了,谢谢
fcuandy 2007-12-25
  • 打赏
  • 举报
回复
是iif不是if
jetsql不支持case when.所以要用iif来代替.

iif(条件表达式,true时结果,false时结果)
功能类似于三目运算符?

条件表达式 ? true时结果:false时结果

同 t-sql中 case when

case when 条件表达式 then true时结果 else false时结果 end

似if else功能
basic
if 条件表达式 then
true时语句
else
flase时语句
end if

c#
if(条件表达式)
{//true;}
else
{//false;}
libin1985 2007-12-25
  • 打赏
  • 举报
回复
语法错误 (操作符丢失) 在查询表达式 '(case when '隶属'=='专属' then '=' else '>=' end)' 中。
.....郁闷了
amu0528 2007-12-25
  • 打赏
  • 举报
回复
'隶属' = '专属'
确认是表达式吗

试一下

'隶属'=='专属'
libin1985 2007-12-25
  • 打赏
  • 举报
回复
语法错误 (操作符丢失) 在查询表达式 '(if '隶属' = '专属' then '=' else '>=' end)' 中。
SQL语句:Insert into NwebCn_About(NwebCn_About.AboutNameSi,NwebCn_About.AboutNameTr,NwebCn_About.AboutNameEn,NwebCn_About.ViewFlagSi,NwebCn_About.ViewFlagTr,NwebCn_About.ViewFlagEn,NwebCn_About.ChildFlag,NwebCn_About.GroupID,NwebCn_About.Exclusive,NwebCn_About.ContentSi,NwebCn_About.ContentTr,NwebCn_About.ContentEn) select '234234','','','True','False','False','False',NwebCn_MemGroup.GroupID ,
(if '隶属' = '专属' then '=' else '>=' end),'','','' from NwebCn_MemGroup where NwebCn_MemGroup.GroupNameSi ='临时游客'


语法错误 (操作符丢失) 在查询表达式 '(case when '隶属' = '专属' then '=' else '>=' end)' 中。
SQL语句:Insert into NwebCn_About(NwebCn_About.AboutNameSi,NwebCn_About.AboutNameTr,NwebCn_About.AboutNameEn,NwebCn_About.ViewFlagSi,NwebCn_About.ViewFlagTr,NwebCn_About.ViewFlagEn,NwebCn_About.ChildFlag,NwebCn_About.GroupID,NwebCn_About.Exclusive,NwebCn_About.ContentSi,NwebCn_About.ContentTr,NwebCn_About.ContentEn) select '213','123','123','True','False','False','False',NwebCn_MemGroup.GroupID ,(case when '隶属' = '专属' then '=' else '>=' end),'123','123','123' from NwebCn_MemGroup where NwebCn_MemGroup.GroupNameSi ='临时游客'
fcuandy 2007-12-25
  • 打赏
  • 举报
回复
1,用'来代替#
2,用iif取代case when then end
amu0528 2007-12-25
  • 打赏
  • 举报
回复
case when 表达式 then 'ddd'

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧