关键字“order”附近的语法不正确。 [英] Incorrect syntax near the keyword 'order'.
本文介绍了关键字“order”附近的语法不正确。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经创建了一个存储过程,用于将多个数据插入SQL DB,但在尝试执行存储过程时收到错误。
消息156,等级15,状态1,程序orderdetailsbulk,第6行
关键字'order'附近的语法不正确。
目前我正在使用Ms SQL 2008 Express R2。
<跨度类= 代码关键字>创建跨度> <跨度类= 代码关键字>过程跨度> dbo.orderdetailsbulk
<跨度类=代码 - sdkkeyword > @ XMLDATA 跨度> XML
<跨度类= 代码关键字 >作为跨度>
<跨度类= 代码关键字>插入跨度> <跨度类= 代码关键字>到跨度> ORDERDETAILS(订单ID,OrderItem的,orderdes,orderquan,orderfrom,orderto,订单类型,orderprice,的OrderTotal)
<跨度类= 代码关键字>选择
order .query(' orderid ')。值(' 。',' int') as orderid,
order .query(' orderitem')。值(' 。 ',' nvarchar(50)') as orderitem,
order .query(' orderdes')。值(' 。',' nvarchar(MAX)') as orderdes,
order .query(' orderquan')。值(' 。',' int') as orderquan,
order .query (' orderfrom')。值('' 。',' date') as orderfrom,
order .query(' orderto')。值(' 。 ',' date') as orderto,
order .query(' ordertype')。值(' 。','跨度> <温泉n class =code-string> nvarchar(MAX)') as ordertype,
订单 .query(' orderprice')。值(' 。',' money') as orderprice,
order .query( ordertotal')。值(' 。',' money')作为跨度>的OrderTotal,
<跨度类= 代码关键字 自跨度>
<跨度类=> 代码sdkkeyword> @ XMLDATA 跨度> .nodes(' / orderdetails / order') as XMLData( order )
return
解决方案
订单是一个关键字(订购方式 [ ^ ])所以你会如果你使用它会出错。
I've created a stored procedure for the inserting multiple data into SQL DB but receiving an error when try to execute the stored procedure.
Msg 156, Level 15, State 1, Procedure orderdetailsbulk, Line 6
Incorrect syntax near the keyword 'order'.
currently i'm using Ms SQL 2008 Express R2.
create procedure dbo.orderdetailsbulk
@XMLdata xml
as
Insert into orderdetails(orderid, orderitem,orderdes,orderquan,orderfrom,orderto,ordertype,orderprice,ordertotal)
select
order.query('orderid').Value('.','int') as orderid,
order.query('orderitem').Value('.','nvarchar(50)') as orderitem,
order.query('orderdes').Value('.','nvarchar(MAX)') as orderdes,
order.query('orderquan').Value('.','int') as orderquan,
order.query('orderfrom').Value('.','date') as orderfrom,
order.query('orderto').Value('.','date') as orderto,
order.query('ordertype').Value('.','nvarchar(MAX)') as ordertype,
order.query('orderprice').Value('.','money') as orderprice,
order.query('ordertotal').Value('.','money') as ordertotal,
from
@XMLData.nodes('/orderdetails/order') as XMLData(order)
return
解决方案
Order is a keyword (ORDER BY[^]) so you would get errors if you use it.
这篇关于关键字“order”附近的语法不正确。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文