sql server2008数据库导库insert后面跟with语句

sql语句insertinto[lanhai].[dbo].[article](m_id,ArticleTitle,ArticleContent,Articlefrom,... sql语句
insert into [lanhai].[dbo].[article](m_id, ArticleTitle, ArticleContent, Articlefrom, AdminName, AddTime, isshow, ip, newsid, mid)
with tm
as(select a.m_id,a.m_name,b.menu_id,b.menu_name,c.c_name from [lanhai].[dbo].[menu] a inner join [lanhaiweb].[dbo].[sys_menu] b on a.m_name=b.menu_name inner join [lanhai].[dbo].[columntype] c on a.m_type=c.id where c.id in(1,2))
select t.m_id,n.news_title,n.news_content,n.news_title2,n.news_sender,n.in_time,1,n.in_ip,n.news_id,n.menu_id from [lanhaiweb].[dbo].[web_info_news] n inner join tm t on n.menu_id=t.menu_id;

消息 156,级别 15,状态 1,第 2 行
关键字 'with' 附近有语法错误。
消息 319,级别 15,状态 1,第 2 行
关键字 'with' 附近有语法错误。如果此语句是公用表表达式、xmlnamespaces 子句或者更改跟踪上下文子句,那么前一个语句必须以分号结尾。
展开
 我来答
随机数xZ
推荐于2016-03-29 · TA获得超过357个赞
知道小有建树答主
回答量:372
采纳率:0%
帮助的人:417万
展开全部

--把Insert语句放到with后面即可

with aaa as{....}
insert into 表
select * from aaa

如有问题可以追问,我当及时回答.

希望能帮到你

追问
放了后面也不行,还是报错,临时表tm有内容正确

消息 515,级别 16,状态 2,第 1 行
不能将值 NULL 插入列 'ArticleId',表 'lanhai.dbo.article';列不允许有 Null 值。INSERT 失败。
语句已终止。
追答
报错信息:不能将值 NULL 插入列 'ArticleId'? 已经不是那个错误了

放在上面是可以的,只是你的article 表 列ArticleId 此列不能为空 报错信息.

我看你的代码article 表 没有插入ArticleId列.如不是自增及标识需加上。
巴素华
2013-08-29 · TA获得超过123个赞
知道小有建树答主
回答量:107
采纳率:100%
帮助的人:53.4万
展开全部
with前面的语句加分号结尾
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
17号观察室
2013-08-29 · TA获得超过5730个赞
知道大有可为答主
回答量:3666
采纳率:66%
帮助的人:1335万
展开全部
--楼主 你少个分号 我帮你改下吧 with 前面的语句后面必须有分号的
--有什么疑问可以随时找我 希望解决了楼主的问题
insert into [lanhai].[dbo].[article](m_id, ArticleTitle, ArticleContent, Articlefrom, AdminName, AddTime, isshow, ip, newsid, mid);
with tm
as(select a.m_id,a.m_name,b.menu_id,b.menu_name,c.c_name from [lanhai].[dbo].[menu] a inner join [lanhaiweb].[dbo].[sys_menu] b on a.m_name=b.menu_name inner join [lanhai].[dbo].[columntype] c on a.m_type=c.id where c.id in(1,2))
select t.m_id,n.news_title,n.news_content,n.news_title2,n.news_sender,n.in_time,1,n.in_ip,n.news_id,n.menu_id from [lanhaiweb].[dbo].[web_info_news] n inner join tm t on n.menu_id=t.menu_id;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式