declare @porder varchar(20),@partno varchar(20),@dhsl int, @sql nvarchar(2000)
set @porder ='072816-001'
set @partno='111191000'
set @sql=N'select @k=po_quantity from product_po_list where part_no='''+@partno+'''+ ''   and  + '' +order_no='''+@porder+''''  --取得订单数量exec sp_executesql @sql,N'@k int output',@dhsl output

解决方案 »

  1.   

    part_no='''+@partno+'''+ ''   and  + '' +order_no='''+@porder+''''
      

  2.   

    To:phantomMan(我不吸烟,我讨厌别人吸烟) declare @porder varchar(20),@partno varchar(20),@dhsl int, @sql nvarchar(2000)
    set @porder ='072816-001'
    set @partno='111191000'
    set @sql=N'select @k=po_quantity from product_po_list where part_no='''+@partno+'''+ ''   and  + '' +order_no='''+@porder+''''  --取得订单数量exec sp_executesql @sql,N'@k int output',@dhsl output执行后出现以下错误信息:
    '=' 附近有语法错误。
      

  3.   

    declare @porder varchar(20),@partno varchar(20),@dhsl int, @sql nvarchar(2000)
    set @porder ='072816-001'
    set @partno='111191000'
    set @sql='select @k=po_quantity from product_po_list where part_no='''+@partno+'''  and  order_no='''+@porder+''''
      

  4.   

    part_no='''+@partno+''   and  ' + order_no='''+@porder+''''  --取得订单数量
      

  5.   

    根据楼主的意思,似乎这样就可以了:declare @porder nvarchar(20), @partno nvarchar(20), @dhsl int, @sql nvarchar(2000)
    set @porder=N'072816-001'
    set @partno=N'111191000'
    set @sql='select @k=po_quantity from product_po_list where part_no= @partno and order_no= @porder'  --取得订单数量
    exec sp_executesql @sql,
    N'@k int output,@partno nvarchar(20),@porder nvarchar(20)',
    @dhsl output,@partno,@porder
      

  6.   

    declare @porder varchar(20),@partno varchar(20),@dhsl int, @sql nvarchar(2000)
    set @porder ='072816-001'
    set @partno='111191000'
    set @sql=N'select @k=po_quantity from product_po_list where part_no='''+@partno+'''  and  order_no='''+@porder+''''  --取得订单数量
    print @sql
    exec sp_executesql @sql,N'@k int output',@dhsl output