1

我正在尝试CREATE TABLE在 NexusDB 中导入语句。
表名包含一些德语变音符号,一些字段名称也是如此,但我收到一个错误,指出我的语句中有一些无效字符(显然是变音符号......)。

我现在的问题是:有人可以提供解决方案或任何想法来解决我的问题吗?

将变音符号更改为等价的术语(如ä->aeö-> )并不容易,oe因为我们的应用程序具有每个客户当前使用的固定表名。

4

1 回答 1

1

在 SQL 标准通常允许的范围之外使用字符不是一个好主意。这不仅会在 NexusDB 中对您造成影响,而且在许多其他数据库中也会如此。请特别注意,当您想通过 ODBC 等访问数据时,您很有可能也会遇到问题,因为其他环境也可能有类似的标准限制。我强烈建议避免使用 SQL 命名标准之外的字符,无论使用哪个数据库。

然而......说了这么多,鉴于 NexusDB 是程序员最灵活的数据库系统之一(它带有完整的源代码),已经有一个解决方案。如果向数据库服务器项目添加“扩展文字”定义,则认为更大的字符数组是有效的。有关此启用的确切更改,请参阅 nxllConst.pas 单元中的 nxcValidIdentChars 常量。如果需要,也可以更改常数。

于 2016-07-21T00:59:00.153 回答