这个问题来自我在this中收到的建议,即更改我的错误代码定义并从那里开始。
我的问题:在尝试将数据插入表格时,我会收到SQLCODE 00195
和SQLSTATE S0001
。如果我正确理解错误代码,则正非零数字表示查询成功但有警告。当我查看我的数据库时,没有插入任何数据。
我发现two resources将此错误代码描述为
不是公认的内置函数名称
正如您所看到的,我的表达式中使用的两个函数是TRIM
和SHA1
。如果我省略它们,则同样的错误仍然存在。
使用我在其他帖子中建议的SQLCODE字段的PIC -(4)9
定义,返回-195
作为结果,也是一个我似乎找不到的错误代码。
我使用SQL Server 2012和Percobol,它使用OpenCobol编译器。
领域宣言:
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