0

私は現在cobol2でプロジェクトを作成しています..私はmicrofocusのビジュアルcobolを使用しており、データベースにAdo.netを使用していました..openesqlアシスタントのインターフェースで、データベーステーブルに値を挿入できます..しかし、フォーム私のプロジェクトのボタン1をクリックすると、「NO SQL DIRECTIVES HAVE BEEN SET」というエラーが表示されました

(ここに私のコードがあります

method-id button1_Click final private.
   procedure division using by value sender as object e as type System.EventArgs.

   EXEC SQL
    INSERT INTO NayreInventory  
    (ItemCode
    ,ItemDescription
    ,Quantity
    ,Price
     ) VALUES (
     :NayreInventory-ItemCode:NayreInventory-ItemCode-0001
    ,:NayreInventory-ItemDescription:Col-2-MEDICOL
    ,:NayreInventory-Quantity:NayreInventory-Quantity-5
    ,:NayreInventory-Price:NayreInventory-Price-150
     )
   END-EXEC. 

   invoke type MessageBox::Show("1 RECORD HAS BEEN SUCCESSFULLY ADDED", "RESULT")
   end method.

)エラーを取り除く方法..助けてください..私は本当にあなたの助けを借りました..

4

2 に答える 2

1

MicroFocusCOBOLコンパイラ指令を指定する方法はいくつかあります。SQL / NOSQLディレクティブを指定する1つの方法は、次の$ように、7列目にあるCOBOLソースにディレクティブを埋め込むことです。

      $SET SQL

または、ニーズに応じて:

      $SET NOSQL

コマンドラインを使用することもできます:

cob -C SQL ...source file name and other arguments

詳細については、リンクをたどってください。

于 2013-03-06T16:09:58.553 に答える
1

このように伝言番号もありますか?

"0149 SQL 指令が設定されていません"

そのメッセージの説明は次のとおりです。

「EXEC SQL ステートメントが検出されましたが、SQL ディレクティブが指定されていません。ステートメントの処理は、ディレクティブ SQL が設定されているかどうかによって異なります。SQL または NOSQL のいずれかを明示的に指定する必要があります。

関連項目: 『Server Express ユーザー ガイド』の「コンパイラのディレクティブ」の章にある SQL コンパイラ ディレクティブを参照してください。

したがって、コンパイル スクリプトから「コンパイラ オプション」が欠落しているように見えます。

これはhttp://supportline.microfocus.com/documentation/books/sx20books/emsynt.htmからのものです。

情報を取得するために、エラー メッセージをググったところです。

于 2013-03-05T18:12:16.277 に答える