问题标签 [information-schema]

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 投票
1 回答
288 浏览

mysql - 确定没有 information_schema 的 InnoDB FK 约束

我正在编写一些代码来检查 MySQL 数据库结构,并且需要有关外键约束的信息(在 InnoDB 表上)。

我知道有两种方法可以做到这一点:

  1. 解析结果SHOW CREATE TABLE X
  2. 利用INFORMATION_SCEMA.REFERENTIAL_CONSTRAINTS

不幸的是,选项二需要 MySQL 5.1.16 或更高版本,所以我不能使用它,除非/直到我能说服我们的服务器人员进行更新,虽然我可能会选择选项 1,但感觉很混乱,而且没有编写完整的 SQL解析器我不确定我的代码是否总是适用于任何表。

有没有其他方法可以获取这些信息?

谢谢

0 投票
1 回答
3389 浏览

sql-server - SQL Server 上的 information_schema 架构信息不可靠?

此处的 SQL Server 文档说 的table_schema字段information_schema.tables是“不可靠的”,并且获取对象架构的正确方法是查询sys.objects.

谁能详细说明报告的架构如何以及何时information_schema.tables不正确?

0 投票
2 回答
3359 浏览

mysql - MySQL 中 INFORMATION_SCHEMA.key_column_usage 的性能不佳

我正在运行 MySQL 5.5.11 版本,查询 INFORMATION_SCHEMA.key_column_usage 表时的性能非常糟糕。

我有一个简单的选择请求:

返回 400 行平均需要 8 秒。这是一个已知问题吗?如果是这样,有没有办法提高性能(也许是补丁?)。

0 投票
1 回答
1143 浏览

mysql - MySQL:插入表显示创建视图

我需要将 SHOW CREATE VIEW 的“创建视图”列写入临时表。

请注意,我不能使用 INFORMATION_SCHEMA,因为那里的创建视图语句与我从“创建视图”获得的语句有点不同。具体来说,INFORMATION_SCHEMA 中的语句在 Create View 语句中有数据库模式名称,我想在没有模式名称的情况下转储它。(我不能使用 RegEx 删除语句名称,因为我不知道模式名称是自动设置还是由用户如何创建语句)

谢谢你的想法!

0 投票
1 回答
350 浏览

postgresql - 为什么这个查询会死锁?

我有一个应用程序可以读取现有 PostgreSQL 9.1 数据库的结构,将其与“应该是”状态进行比较并相应地更新数据库。在大多数情况下,这很好用。但是,当读取当前数据库结构时,我现在有几个实例死锁。负责的查询读取现有的外键:

在 pgAdmin 中查看服务器状态表明这是在服务器上运行的唯一活动查询/事务。仍然,查询没有返回。

错误在某种程度上是可重现的:当我找到一个产生错误的数据库时,它每次都会产生错误。但并非所有数据库都会产生错误。这是一个神秘的错误,对于其他尝试或如何解决这个问题,我已经没有选择和想法了。因此,任何输入或想法都将受到高度赞赏!

PS:我的一位同事刚刚报告他使用 PostgreSQL 8.4 产生了同样的错误。

0 投票
1 回答
5276 浏览

sql-server - 使用 information_schema 在 ms sql server 中查找外键

我正在尝试查找具有指向特定表的外键的所有表。所以我写了这个:

对于我正在处理的数据库中的 24 个外键中的 22 个,这在 90% 的时间里有效。但是对于 2 个 FK,unique_constraint_name 与 table_constraints 中的任何名称都不匹配。

名字也有点搞笑。其中之一是“环境指示符”,带有空格。FK 指向的字段名为“environment_designator”,带有下划线。另一个有一个 unique_constraint_name 的“文件名是唯一的”,它与我在“从”或“到”表的定义中看到的任何内容都不对应。

还有其他地方我应该在 unique_constraint_name 上寻找匹配项吗?

0 投票
1 回答
451 浏览

sql - 是否有 SQL information_schema XSD 定义?

SQL:2008和以前的标准中,INFORMATION_SCHEMA被描述为标准元模式。原则上,可以将元数据卸载到 XML 中,以便使用 XSLT 和其他 XML 工具对模式元数据进行进一步处理和逆向工程。

  • 以前有这样做过吗?
  • 是否有一些完整的 XSD 可用,描述INFORMATION_SCHEMA?

注意:我问这个是因为我想在jooq-metaINFORMATION_SCHEMA中实现将数据库模式卸载到 SQL 标准XML 结构中,然后在第二个过程中再次加载该模式,以在 jOOQ 中生成 Java 源代码工件。为此,我不希望推出自己的 XSD,而是使用预先存在的尽可能接近标准的 XSD

0 投票
3 回答
4129 浏览

mysql - 将整个数据库的空字符串更新为 NULL

我正在执行一些数据库清理,并注意到有很多列在各个列中都有空字符串和 NULL 值。

是否可以编写一个 SQL 语句将数据库中每个表的每一列的空字符串更新为 NULL,除了那些不允许 NULL 的字符串?

我看了看information_schema.COLUMNS表格,认为这可能是开始的地方。

0 投票
4 回答
13529 浏览

sql-server - 如何轻松找到有溢出危险的 IDENTITY 列?

我的数据库正在变旧,而我最大的INT IDENTITY列之一的价值约为 13 亿。这将溢出大约 21 亿。我计划增加它的大小,但由于数据库中的记录数量,我不想太快这样做。我可能会在增加列大小之前更换我的数据库硬件,这可以抵消这可能导致的任何性能问题。我还想关注我的数据库中所有其他列已满 50% 的列。这是很多表,手动检查每一个是不切实际的。

这就是我现在获取值的方式(我知道返回的值可能有点过时,但对于我的目的来说已经足够了):

我可以使用INFORMATION_SCHEMA获取此信息吗?

0 投票
0 回答
90 浏览

php - 信息模式取自本地服务器而不是客户端服务器

在我的网站中,我想列出我导入的数据库中的表。这是我的 php 代码:

她的 $dbname 是数据库的名称。

当我显示$tblstr它时,它的值为 0。

该站点正在我的系统中进行测试,然后我得到 $ 中的值tblstr。但是当我在其他系统中检查它时,我得到了 0 值。我的代码有什么问题?

为什么信息shema取自本地服务器而不是客户端服务器?

这是mysql连接代码:

这是一个codeigniter网站。