求一SQL语句?

long7411 2007-07-11 12:11:17
当表中某一记录不存在时,则插入一条记录

我用以下写的都不行,该怎么写,谢谢了!:
if not exists (select * from dbo.datatxt where 时间='20070615'and 序号= '00000473')
insert into dbo.datatxt values ('20070615','082020594','00000473','+107.96383','+18.93985','-043.357','0','2','+012.752','000000.838','000000.078','002.330','004','004','002','003','001')

insert into dbo.datatxt values ('20070615','082020594','00000473','+107.96383','+18.93985','-043.357','0','2','+012.752','000000.838','000000.078','002.330','004','004','002','003','001') WHERE not exists (select * from dbo.datatxt where 时间='20070615'and 序号= '00000473')
...全文
122 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellowork 2007-07-11
  • 打赏
  • 举报
回复
第一种方法应该没问题,如果有问题则可能是values()中指定的值的数量与表中列的数量不一致,
请把datatxt表的结构帖出来.
第二中方法语法错误.
you_tube 2007-07-11
  • 打赏
  • 举报
回复
楼上正确!
long7411 2007-07-11
  • 打赏
  • 举报
回复
已按上说的修改通过!
昵称被占用了 2007-07-11
  • 打赏
  • 举报
回复
可能数据类型有问题吧

需要表结构
昵称被占用了 2007-07-11
  • 打赏
  • 举报
回复
第二种应该改成

insert into dbo.datatxt select '20070615','082020594','00000473','+107.96383','+18.93985','-043.357','0','2','+012.752','000000.838','000000.078','002.330','004','004','002','003','001' WHERE not exists (select * from dbo.datatxt where 时间='20070615'and 序号= '00000473')

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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