0

我在存储过程的输入参数中使用欧元符号 (€) 时遇到转换问题。这是我正在使用的代码:

Dim _command As New iDB2Command
p = New iDB2Parameter
p.Direction = ParameterDirection.Input
p.iDB2DbType = iDB2DbType.iDB2VarChar
p.ParameterName = "@TXT_VALUE"
p.iDB2Value = "I have 100€."
_command.Parameters.Add(p)

详细的错误是:

IBM.Data.DB2.iSeries.iDB2ConversionException
Message: A conversion error occurred.
MessageCode: 6107
MessageDetails: Parameter: 4.

SQL 代码为空(执行命令前发生异常)。

环境:

  • Windows 7、VS2010 和 .Net 4.0 框架
  • IBM DB2 for i .NET 提供程序 (13.0.0.2 - V7R1M0)

问候!

4

1 回答 1

0

使用支持欧元符号的 CCSID 重新创建该过程,明确定义该输入参数;即不允许字符串参数的CCSID 属性默认为可能是未表示欧元系统的EBCDIC CCSID。

于 2016-08-03T21:39:12.343 回答