问题标签 [quoted-identifier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
358 浏览

sql-server-2005 - Power Builder 应用程序的引用标识符问题

Power Builder 11 应用程序在 Windows 2008 服务器上通过 ODBC 驱动程序遇到 DB 查询问题。以下是详细信息。

应用程序的查询格式类似于 select "column1" from "table1"。应用程序使用 MSSQL 数据库。该应用程序过去可以通过 ODBC 驱动程序在 Windows 2003 服务器上正常运行,但是该应用程序现在在 Windows 2008 服务器上运行失败。

经过详细分析,我发现由于引用标识符格式,查询在 Windows 2008 服务器上通过 ODBC 驱动程序失败。我试图修改quoted_identifier 属性,但没有帮助。当我从查询中删除引号时,它工作正常。但是实际上不可能进行这样的更改,因为应用程序有数千个这样的查询。2003 和 2008 都有不同的 SQL 驱动程序,但是后端数据库保持不变。

我无法更新数据库上的引用标识符属性,因为它被其他系统使用。请建议如何通过应用程序或 ODBC 驱动程序修复它。

0 投票
2 回答
453 浏览

php - how to insert the value having double quotes in the database?

For the message column i have used the value with single quotes hence i got the insertion error....

And i tried to change the query as below but the output and the error is same. Ho to over come it.

0 投票
1 回答
3592 浏览

python - Postgres Alter Table 关系不存在

我有一个名为 Foo 的表,我正在尝试向其中添加一列“bar”。在 python 中使用 psycopg2,我的函数调用是

但是,我收到以下错误:

我还尝试将架构“公开”放在它之前无济于事。我究竟做错了什么?谢谢。

编辑:

CraigRinger 的命令\dt *.?oo产生了No matching relations found

\dt *.foo并且\dt *.Foo都产生了以下输出:

0 投票
1 回答
176 浏览

c# - 为什么我的 sql 命令不接受表名的带引号的标识符?

我想让我的 sql 查询防弹,发现这个关于清理表/列名的问题。

我遵循了建议,但不知何故它没有按预期工作。

我的表名是foo.Bar所以我将它传递给CommandBuilder'QuoteIdentifier方法并[foo.Bar]返回给我。

当我打电话给(string)cmd.ExecuteScalar();它时抱怨这个表不存在。所以我尝试最初将表名定义为[foo].[Bar]. 在这种情况下,QuoteIdentifier创建[[foo]].[Bar]]]也不起作用。

唯一有效的是当我指定时[foo].[Bar]不使用该QuoteIdentifier方法。

在这一点上,我想知道是否可以使用它来保护我的查询?它没有多大用处,并且像另一个答案所暗示的那样调整引用的查询似乎也不正确。

我能做些什么来保护查询并使其工作并接受名称[foo].[Bar]而不破坏它吗?

这就是我创建查询的方式:

0 投票
1 回答
40 浏览

codefluent - 引用标识符错误 Codefluent

Azure 生产者存在 QUOTEDIDENTIFIER 问题。我们有一个实体,我们在其中定义了一个 Geography 属性。我们在该表上创建了一个地理空间索引。但是,如果我们对该表执行插入或更新,我们会收到以下错误:

INSERT 失败,因为以下 SET 选项的设置不正确:“QUOTED_IDENTIFIER”。验证 SET 选项对于索引视图和/或计算列上的索引和/或过滤索引和/或查询通知和/或 XML 数据类型方法和/或空间索引操作是否正确。

我们通过删除和恢复该表的所有存储过程解决了该错误,但现在将 QUOTED IDENTIFIER 设置为 ON。

问题是,每次我们运行生产者时,存储过程都会被删除并在 QUOTED IDENTIFIER OFF 的情况下创建。我们该如何解决这种情况?

0 投票
2 回答
1618 浏览

sql - 过滤的唯一索引导致更新失败,因为不正确的 'QUOTED_IDENTIFIER' 设置

我们在 SQL Server 2016 数据库中的表上放置了以下过滤索引:

这导致 SQL 代码现在失败并出现以下错误:

UPDATE 失败,因为以下 SET 选项的设置不正确:'QUOTED_IDENTIFIER'。验证 SET 选项对于索引视图和/或计算列上的索引和/或过滤索引和/或查询通知和/或 XML 数据类型方法和/或空间索引操作是否正确。[SQLSTATE 42000](错误 1934)。步骤失败。

删除过滤索引后,代码运行完美。

MSDN 上查找 Index Options,没有关于 QUOTED_IDENTIFIERS 的内容。

我们的 SQL 代码中的任何 UPDATE 语句都没有任何值的双引号。我们可以看到的唯一双引号如下:

即使我们将这些双引号 " 更改为两个单引号 '',代码仍然会失败并出现相同的错误。

表本身是通过以下方式创建的:

就像我说的那样,如果我们不创建过滤索引,那么整个代码都可以完美运行;它只会因索引而失败。

那么为什么过滤后的索引会突然导致我们的 SQL 被炸毁,我们该如何解决呢?

更新:这是重现故障的一小段代码。此代码通过 SQL 代理作业运行。删除索引后,此代码按预期运行,说明任务不存在的错误:

UPDATE2 with ANSWER: 正如下面有用的答案所指出的,我不得不把

在 SQL 的顶部使其正常工作。

当我使用它创建索引时没有效果。

0 投票
2 回答
287 浏览

sql - 内部连接错误 - 尽管存在表但未找到表

这是我的代码,当我运行它时会出现这样的问题

0 投票
3 回答
110167 浏览

sql - PostgreSQL“列不存在”但它确实存在

我正在编写一个Java应用程序来自动构建和运行 SQL 查询。对于许多表,我的代码可以正常工作,但在某个表上,它会因抛出以下异常而卡住:

已运行的查询如下:

这实际上5从列中返回非空值。

我不明白为什么在pgAdmin 4中明显出现“列不存在”错误。我可以看到有一个名称Network包含表的模式,countries并且该表有一个Continent按预期命名的列。

由于所有列、模式和表名都是由应用程序本身检索的,我认为没有拼写或语义错误,那么为什么PostgreSQL会导致问题呢?在 pgAdmin4 中运行查询也不使用建议countries.Continent的工作。

我的 PostgreSQL 版本是目前最新的:

如何成功运行查询?

0 投票
3 回答
2323 浏览

java - 硒与 postgreSQL

我正在尝试将 Selenium 与 Postgres 连接,并显示以下错误:

失败:selectQuery org.postgresql.util.PSQLException:错误:关系“登录”不存在

我的代码如下:

我有一个表“在模式“DICschema”中登录。我也写了这样的选择查询“从 DICschema.Login 中选择 *”,然后也是同样的错误

在此处输入图像描述

0 投票
3 回答
53798 浏览

postgresql - 为什么 PostgreSQL 不喜欢大写的表名?

我最近尝试在 PostgreSQL 中以大写名称创建一些表。但是,为了查询它们,我需要将表名放在引号“TABLE_NAME”中。有什么办法可以避免这种情况并告诉 postgres 正常使用大写名称?

更新

此查询使用小写的table_name创建一个表

但是,此查询会创建一个具有大写名称“TABLE_NAME”的表

问题是引号现在是名称的一部分!在我的情况下,我不手动创建表,另一个应用程序创建表并且名称是大写字母。当我想通过 Geoserver使用CQL过滤器时,这会导致问题。