web-dev-qa-db-ja.com

エラーSQL70001:このステートメントはこのコンテキストでは認識されません

次のようにasp.netアプリケーションにストアドプロシージャを設定しました。

CREATE PROCEDURE [dbo].[step2-e]
    @PI varchar(50),
    @Balance int output ,
    @Shipment_status varchar(50) output,
    @ETA varchar(50) output,
    @Forwarder varchar(50) output,
    @Transit_time Time output,
    @Shipping_date date output,
    @Shipping_method varchar(50) output,
    @Clearance_location varchar(50) output,
    @Advance_payment varchar(50) output 
    @Balance_t varchar(50) output,
    @Loading_date date output 
    @Balance_d date output
AS
Begin
   select 
       @Advance_payment = [advance_payment] @Balance = [Balance], 
       @Shipment_status = [Shipment_status],
       @ETA = [Eta], @Forwarder = [Forwarder], 
       @Transit_time = [Transit_time], @Shipping_date = [Shipping_date],
       @Shipping_method = [Shipping_method], 
       @Clearance_location = [Clearance_location],   
       @Balance_d = [Balance_due_d], 
       @Balance_t = [Balance_due_t], 
       @Loading_date = [Loading_date]  
   from 
       Inbound 
   where 
       [Pi1] =  @PI
End
GO

Select convert(date, [dbo].[step2-e] ,3);
GO

しかし、選択時にGo Wordが言った後にエラーメッセージが表示されます:-

エラーSQL70001:このステートメントはこのコンテキストでは認識されません

わかりましたGo Wordを使用すると問題があると思います。検索すると解決策が見つかりましたが、asp.net Webサイトではasp.netアプリケーションではありません。私は解決策を見つけました here が、asp.netアプリケーションにスクリプトファイルが見つかりません。 asp.net Webサイトで見つけることができます。私に何ができる ?

23
user3623037

投稿したとおり、SELECTの最初の2つの要素の間にコンマがありません。

select 
    @Advance_payment = [advance_payment] @Balance = [Balance], 
                                       ^^^^
                                        | 
                                      here there should be a comma!

代わりにこれを試してください:

select 
   @Advance_payment = [advance_payment],
   @Balance = [Balance], 
   ..... (rest of your statement) ....
3
marc_s

このエラーは、ビルドアクションがプロパティ内でビルドに設定されているために発生します。なしに設定すると、正常に動作します。 enter image description here

さまざまな場所にコンマがありません。変数宣言での出力後:-

@Advance_payment varchar(50)の出力

@Loading_date日付出力

そして、[advance_payment]の後のselectステートメントで:

@Advance_payment = [advance_payment]

1
Tanul