1

この質問は、この質問で受け取ったアドバイス、つまり、エラー コードの定義を変更してそこから移行した結果です。

私の問題: テーブルにデータを挿入しようとすると、SQLCODE 00195SQLSTATE S0001. エラー コードを正しく理解していれば、0 以外の正の数値は、クエリが成功したが警告が発生したことを意味します。データベースを見ると、データが挿入されていません。このエラー コードを次のように説明している2 つの リソースを見つけました。

認識された組み込み関数名ではありません

ご覧のとおり、私の式で使用されている 2 つの関数はTRIMSHA1です。両方を省略すると、同じエラーが続きます。

PIC -(4)9私の他の投稿で提案されているように、SQLCODEフィールドの定義を使用すると-195、結果として返されます。また、何も見つからないように見えるエラーコードも返されます。

OpenCobol コンパイラを利用する SQL Server 2012 と Percobol を使用しています。

フィールドの宣言:

01 SQLCODE PIC 9(5).
01 SQLSTATE PIC X(5).

01 WS-INPUT.
        05 ACHTERNAAM PIC X(25) VALUE SPACES.
        05 VOORNAAM PIC X(15) VALUE SPACES.
        05 EMAIL PIC X(50) VALUE SPACES.
        05 LOGIN PIC X(15) VALUE SPACES.
        05 WACHTWOORD PIC X(11) VALUE SPACES.
        05 GEBR_TYPE PIC X(20) VALUE SPACES.

SQL クエリ:

EXEC SQL INSERT INTO dbo.Gebruikers
    VALUES ( TRIM( :LOGIN ), TRIM( :ACHTERNAAM ),
             TRIM( :EMAIL ), TRIM( :PROJECTCODE ),
             TRIM( :GEBR_TYPE ), TRIM( :VOORNAAM ),
             SHA1( TRIM( :WACHTWOORD ) ) )
END-EXEC

データベース:

テーブルの概要

接続文字列:

jdbc:sqlserver://localhost\SQLEXPRESS;databaseName=Groep31;user=Groep31;password=somepw
4

1 に答える 1