为何在sql server中元组的集体插入不行呢?

wxycsdn 2003-08-22 02:19:22
sql语句如下:
insert into txmap (TABLE('aaa','bbb','sss'),('ccc','ddd','aaa'))
可解释器报错:
服务器: 消息 156,级别 15,状态 1,行 1
在关键字 'TABLE' 附近有语法错误。

十分不解,
不会是sql server自己不支持上述标准sql吧?
谁能告诉我?
谢谢
...全文
103 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxycsdn 2003-08-29
  • 打赏
  • 举报
回复
有哪位老大知道吗?
告知一下吧。
wxycsdn 2003-08-22
  • 打赏
  • 举报
回复
唐老鸭兄,不是这样的。
我是将一个文本文件转化为数据库表。
当从文件中读出插入表中时,
可以用"insert into txmap values('aaa','bbb','ccc')
但这样只能一条语句插入一个元组,
为提高效率,我要一次插入多个。
按书上所说,可以这样:
insert into txmap (TABLE('aaa','bbb','sss'),('ccc','ddd','aaa'))
可sql server解释器却报错,
就是酱紫。

如果不行的话,我只能回到原来的一次插入一个。
你说是怎么回事?
hjb111 2003-08-22
  • 打赏
  • 举报
回复
如果我理解你的意思,应当想让两个表Table1(aaa,bbb,ccc)中的所有值,与table2(ccc,ddd,aaa)中的所有插入到txmap中,那么就应当这样:

insert into txmap select aaa,bbb,ccc from table1 union select ccc,ddd,aaa from table2
wxycsdn 2003-08-22
  • 打赏
  • 举报
回复
这个语句是sql2的,
是不是sql server 不完全支持sql2啊?
wxycsdn 2003-08-22
  • 打赏
  • 举报
回复
就是在表中要插入多个具体的元组值,
如,同时插入('aaa','bbb','sss')和('ccc','ddd','aaa')
书上说可以写成:
insert into txmap (TABLE('aaa','bbb','sss'),('ccc','ddd','aaa'))
可在sql server 力却报错。

我想集体插入,若单个插入则效率太差。
郁闷ing。。。
hjb111 2003-08-22
  • 打赏
  • 举报
回复
不理解你的意思,请说明你想要做什么?
wxycsdn 2003-08-22
  • 打赏
  • 举报
回复
急问 && 在线等待中。。。
CrazyFor 2003-08-22
  • 打赏
  • 举报
回复
insert into txmap
select 'aaa','bbb','sss'
union
select 'ccc','ddd','aaa'

34,594

社区成员

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

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