Informix:SQL 不接受用双引号括住字符串

问题描述 投票:0回答:1

是否有任何配置强制只允许在 SQL 中用单引号括住字符串? dbimport 后出现问题。

数据库和操作系统

IBM Informix Dynamic Server Version 14.10.FC8AEE
Red Hat Enterprise Linux release 8.5

示例 SQL:带双引号

$ dbaccess ssmpdc -

Database selected.

> select first 3 tabname[1,30] tabname
from systables
where tabname like "sys%"
;
> > >
  217: Column (sys%) not found in any table in the query (or SLV is undefined).
Error in line 3
Near character position 25
>

示例 SQL:带单引号

$ dbaccess ssmpdc -

Database selected.

> select first 3 tabname[1,30] tabname
from systables
where tabname like 'sys%'
;
> > >

tabname

sysaggregates
sysams
sysattrtypes

3 row(s) retrieved.

>

我在以下链接中找到了有关 Informix 环境变量 DELIPIDENT 的信息: 如何转义 Informix 中用作标识符的保留字 以及 https://groups.google.com/g/comp.databases.informix/c/zMSiWG3wbLk

我运行以下命令来检查 DELIMENT 是否已设置,没有任何迹象表明该变量已设置

$ env | grep DELIMIDENT
$ set | grep DELIMIDENT
$ onstat -g cfg | grep DELIMIDENT
informix
1个回答
0
投票

如果设置环境变量

DELIMIDENT=1
,则双引号
"…"
标记标识符,仅单引号
'…'
标记字符串。如果普通字符串使用双引号,这通常会导致 SQL 失败。

© www.soinside.com 2019 - 2024. All rights reserved.