【问题标题】:Creating a table in NexusDB with german umlauts?在 NexusDB 中使用德语变音符号创建表?
【发布时间】:2016-07-20 13:42:56
【问题描述】:

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

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

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

【问题讨论】:

    标签: sql nexusdb


    【解决方案1】:

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

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

    【讨论】:

    • 感谢您的回答!这就是我已经告诉我们的客户的内容,但正如我之前所说:这些表已经存在于具有相同名称“解决方案”的各种客户数据库中。我们现在尝试在代码中映射表名。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    • 1970-01-01
    • 2016-01-21
    • 2021-09-28
    • 1970-01-01
    • 2013-02-09
    • 1970-01-01
    相关资源
    最近更新 更多