标签: information-schema

如何查找MySQL中具有特定列名的所有表?

我有2-3个不同的列名称,我想在整个数据库中查找并列出所有具有这些列的表.任何简单的脚本?

mysql information-schema

807
推荐指数
10
解决办法
47万
查看次数

如何检查Sql server中是否存在约束?

我有这个sql:

ALTER TABLE dbo.ChannelPlayerSkins
    DROP CONSTRAINT FK_ChannelPlayerSkins_Channels
Run Code Online (Sandbox Code Playgroud)

但显然,在我们使用的其他一些数据库中,约束具有不同的名称.如何检查名称是否存在约束FK_ChannelPlayerSkins_Channels.

sql-server information-schema system-tables

250
推荐指数
7
解决办法
35万
查看次数

列出postgresql information_schema中的所有表

在PostgreSQL的information_schema中列出所有表的最佳方法是什么?

澄清:我正在使用一个空数据库(我没有添加任何自己的表),但我希望看到information_schema结构中的每个表.

sql postgresql information-schema

171
推荐指数
7
解决办法
32万
查看次数

如何检查给定模式中是否存在表

Postgres 8.4及更高版本的数据库包含public模式中的模式和公司特定表中的公用表company.
company模式名称始终'company'以公司编号开头并以公司编号结束.
所以可能有以下模式:

public
company1
company2
company3
...
companynn
Run Code Online (Sandbox Code Playgroud)

应用程序始终适用于单个公司.
search_path相应指定在ODBC或连接Npgsql的字符串,如:

search_path='company3,public'
Run Code Online (Sandbox Code Playgroud)

如何检查给定表是否存在于指定的companyn模式中?

例如:

select isSpecific('company3','tablenotincompany3schema')
Run Code Online (Sandbox Code Playgroud)

应该返回false,并

select isSpecific('company3','tableincompany3schema')
Run Code Online (Sandbox Code Playgroud)

应该回来true.

在任何情况下,该函数应仅检查companyn传递的模式,而不检查其他模式.

如果两者public和传递的模式中都存在给定的表,则该函数应该返回true.
它适用于Postgres 8.4或更高版本.

sql database postgresql information-schema search-path

133
推荐指数
2
解决办法
14万
查看次数

如何使用INFORMATION_SCHEMA找到默认约束?

我正在尝试测试是否存在给定的默认约束.我不想使用sysobjects表,但更标准的INFORMATION_SCHEMA.

我之前用它来检查表和主键约束,但我没有看到任何地方的默认约束.

他们不在吗?(我正在使用MS SQL Server 2000).

编辑:我希望得到约束的名称.

sql t-sql sql-server information-schema

109
推荐指数
5
解决办法
9万
查看次数

如何使用SQL语句测试表中是否存在列

在PostgreSQL中有一个简单的替代方法来生成Oracle中的这个语句吗?

select table_name from user_tab_columns
where table_name = myTable and column_name = myColumn;
Run Code Online (Sandbox Code Playgroud)

然后我测试查询是否返回任何内容以证明列存在.

我知道使用psql我可以单独找到这些,但这是在我编写的程序中生成结果以验证我的数据库表中存在请求的属性字段所必需的.

postgresql information-schema

51
推荐指数
4
解决办法
6万
查看次数

什么是检查SQL Server中是否存在触发器的最便携方法?

我正在寻找最便携的方法来检查MS SQL Server中是否存在触发器.它至少需要处理SQL Server 2000,2005,最好是2008年.

信息似乎不在INFORMATION_SCHEMA中,但如果它在某处,我宁愿从那里使用它.

我知道这个方法:

if exists (
    select * from dbo.sysobjects 
    where name = 'MyTrigger' 
    and OBJECTPROPERTY(id, 'IsTrigger') = 1
) 
begin

end
Run Code Online (Sandbox Code Playgroud)

但我不确定它是否适用于所有SQL Server版本.

sql-server triggers information-schema

48
推荐指数
3
解决办法
7万
查看次数

SQLite架构信息元数据

我需要在SQLite数据库中获取列名及其表.我需要的是一个包含2列的结果集:table_name | column_name.

在MySQL中,我能够通过数据库上的SQL查询获取此信息INFORMATION_SCHEMA.但是SQLite提供了表sqlite_master:

sqlite> create table students (id INTEGER, name TEXT);
sqlite> select * from sqlite_master;
  table|students|students|2|CREATE TABLE students (id INTEGER, name TEXT)
Run Code Online (Sandbox Code Playgroud)

这导致DDL构造查询(CREATE TABLE)对我没有帮助,我需要解析它以获取相关信息.

我需要获取表的列表并将它们与列连接,或者只获取列和表名列.所以PRAGMA table_info(TABLENAME)不适合我,因为我没有表名.我想获取数据库中的所有列元数据.

有没有更好的方法通过查询数据库来获取结果集的信息?

sqlite information-schema

44
推荐指数
3
解决办法
7万
查看次数

SQL Server:如何从information_schema获取外键引用?

在SQL Server中,如何从外键获取引用的表+列名?

注意:不是键所在的表/列,而是键所引用的键.

例:

[FA_MDT_ID]表中的键[T_ALV_Ref_FilterDisplay].是指[T_AP_Ref_Customer].[MDT_ID]

例如在创建这样的约束时:

ALTER TABLE [dbo].[T_ALV_Ref_FilterDisplay]  WITH CHECK ADD  CONSTRAINT [FK_T_ALV_Ref_FilterDisplay_T_AP_Ref_Customer] FOREIGN KEY([FA_MDT_ID])
REFERENCES [dbo].[T_AP_Ref_Customer] ([MDT_ID])
GO
Run Code Online (Sandbox Code Playgroud)

[T_AP_Ref_Customer].[MDT_ID][T_ALV_Ref_FilterAnzeige].[FA_MDT_ID]作为输入给出时我需要得到

sql sql-server foreign-keys information-schema

36
推荐指数
2
解决办法
5万
查看次数

在PostgreSQL中查找NOT NULL的列

我为每个表分配了一个可计算可空列的赋值.简单:

 SELECT table_name, count(*) FROM INFORMATION_SCHEMA.COLUMNS
 WHERE is_nullable='NO'
 GROUP BY table_name;
Run Code Online (Sandbox Code Playgroud)


现在我必须修改它来计算"具有属性"NOT NULL""的列.以下代码是否会执行此操作或仅检查天气列名称是否为空?

CREATE TEMP TABLE A AS 
SELECT DISTINCT column_name, table_name AS name FROM INFORMATION_SCHEMA.COLUMNS
WHERE column_name IS NOT NULL
GROUP BY table_name, column_name;

SELECT name, count(*) FROM A
GROUP BY name;
Run Code Online (Sandbox Code Playgroud)

如果没有......有什么建议吗?

sql postgresql information-schema

34
推荐指数
1
解决办法
7万
查看次数