当前位置:首页 > 生活百科 > 正文内容

如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?(form 2外键怎么设置)

admin10小时前生活百科6

大家好,今天小编关注到一个比较有意思的话题,就是关于form 2外键怎么设置的问题,于是小编就整理了1个相关介绍form 2外键怎么设置的解答,让我们一起看看吧。

  1. 如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?

如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?

我是点点小萱,这个问题我来回答。

MySQL

如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?(form 2外键怎么设置)

MySQL是一个关系型数据库管理系统。因为MySQL是开放源码的,所以一般的中小型网站的开发都选择将MySQL作为网站数据库,这样可以大大降低总体拥有的成本。

那么下面来看看,MySQL中,是怎么判断数据库中表或者字段是否存在的。

查看表是否存在总共有3种方法:

先进入到要查看表的某个数据库

①查看数据库所有的表:

SHOW TABLES;

这个会列出所有的数据库表名。

②根据数据库名称查看表是否存在

SHOW TABLES LIKE 'table_name';

③通过MySql自带的数据库information_schema查看表

SELECT COUNT(*) FROM information_schema.TABLES WHERE table_name = 'table_name';

注意:另外我们在创建表的时候,会经常用到这样的一句sql:

drop table if exists table_name;

如果存在表则先删除该表。

查看表中某个字段是否存在有3种方法:

①describe命令查看表的详细设计

describe table_name;

该语句会列出表中所有的字段信息。

②describe命令查询具体列(字段)的信息

describe table_name column;

表中某列的具体信息。

③通过"show comnus"命令来查看数据库中表的列名:

show columns from database_name.table_name

或者show columns form table_name from database_name


Oracle

如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?(form 2外键怎么设置)

Oracle是一个关系数据库管理系统。Oracle数据库可移植性好、使用方便、功能强大,使用于各个领域的大、中、小、微机环境,在数据库领域一直处于领先地位。

查看表是否存在有2种方法:

①查看当前登录用户中的所有表中是否存在该表

select count(*) from user_tables where table_name =upper('table_name');

注意表名区分大小写,如果参数不限制,那这里就必须要加上函数。

②查询某个用户下的表中是否存在该表

select count(*) from all_tables where owner = UPPER('用户') and table_name = upper('table_name');

这个语句可以在当前用户下查询其他用户下的表信息。

查看表中某个字段是否存在有2种方法:

①通过获取表中的字段来判断

select * from user_tab_columns where table_name='表名' order by column_name;

会列出该表中所有的字段信息。

②直接根据字段名称来查询

select count(*) from user_tab_columns where table_name= '表名' and column_name= '字段名';

如果存在count的值就是1,如果不存在就是0。


PostgreSql

如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?(form 2外键怎么设置)

PostgreSql是一个对象关系型数据库管理系统。它支持大部分的SQL标准语法,并且支持复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等特性。

查看表是否存在有2种方法:

①使用pg_class系统表来查找

select count(*) from pg_class where relname = 'table_name';

information_schema.tables

来查找

select count(*) from information_schema.tables where table_schema='public' and table_type='BASE TABLE' and table_name='table_name';

查看表中某个字段是否存在有2种方法:

①通过获取表中所有的字段来判断

select column_name,data_type,character_maximum_length,numeric_precision,

numeric_scale from information_schema.COLUMNS WHERE table_schema = 'public' and table_name = 'table_name' GROUP BY column_name,data_type,character_maximum_length,numeric_precision,numeric_scale;

会列出该表中所有的字段信息。

②直接根据字段名称来查询

select count(*) from information_schema.columns WHERE table_schema = 'table_schema' and table_name = 'table_name' and column_name = 'column_name';

如果存在count的值就是1,如果不存在就是0。


以上就是小编的回答了,纯属个人观点,如有不足之处,欢迎点评、建议。

我是点点小萱。

这几个数据库呢,SQL语句都是通用的,其实,判断表或者字段是否存在,最简单的方法就是遍历库中的表或者遍历表中的字段。遍历表使用show tables 查看所有的表,然后挨个比对字符串即可。遍历字段呢,使用desc 某表表名,然后查看所有的字段及其类型,对比字符串也就可以了。

到此,以上就是小编对于form 2外键怎么设置的问题就介绍到这了,希望介绍关于form 2外键怎么设置的1点解答对大家有用。

分享给朋友:

“如何判断MySQL、Oracle、PostgreSql数据库中某表或字段是否存在?(form 2外键怎么设置)” 的相关文章

茭白怎么做好吃又简单 茭白的做法大全(茭白怎么做好吃)

茭白怎么做好吃又简单 茭白的做法大全(茭白怎么做好吃)

1 茭白怎么做好吃又简单 茭白烧香菇 原料:茭白350克,鲜香菇50克,料酒、白糖、精盐、味精、淀粉适量。做法:茭白除皮洗净,切成滚刀块。香菇洗净切片,淀粉放碗内加水调成湿淀粉。炒锅注油烧热至六成热。大家好,今天小编关注到一个比较有意思的话题,就是关于茭白怎么做好吃的问题,于是小编就整理...

芒果与什么食物相克(芒果不能和什么食物一起吃?)

芒果与什么食物相克(芒果不能和什么食物一起吃?)

芒果和菠萝都是营养价值极高的美味水果,但它们不能搭配在一起吃,因为芒果和菠萝都是易过敏的水果,如果他们搭配的一起吃,会让食用者出现明显过敏反应,会对身体健康造成不良影响,特别是那些本身就属于过敏体质的人。大家好,今天小编关注到一个比较有意思的话题,就是关于芒果不能和什么一起吃的问题,于是小编就整理了...

鸡肉与什么相克(鸡肉不能与哪些食物一起吃)

鸡肉与什么相克(鸡肉不能与哪些食物一起吃)

1、鸡肉+芹菜:鸡肉和芹菜一起吃影响食物营养元素的吸收,破坏食物的营养结构,吃了会伤元气。 2、鸡肉+李子:鸡肉+李子一起吃会出现胃肠道反应出现腹痛腹泻,对身体健康不利。大家好,今天小编关注到一个比较有意思的话题,就是关于鸡肉不能和什么一起吃的问题,于是小编就整理了2个相关介绍鸡肉不能和什么一起吃的...

深圳的邮编是多少呀?(深圳市的邮政编码?)

深圳的邮编是多少呀?(深圳市的邮政编码?)

大家好,今天小编关注到一个比较有意思的话题,就是关于深圳邮编的问题,于是小编就整理了2个相关介绍深圳邮编的解答,让我们一起看看吧。深圳的邮编是多少呀?深圳邮编号518000。深圳内各地区邮编:罗湖区东 湖 518021 ,田 贝 518020莲 塘 518004,爱国路 518003 春风...

广州各区邮政编码是多少?(广州荔湾区邮编是多少?)

广州各区邮政编码是多少?(广州荔湾区邮编是多少?)

大家好,今天小编关注到一个比较有意思的话题,就是关于荔湾区邮编的问题,于是小编就整理了3个相关介绍荔湾区邮编的解答,让我们一起看看吧。广州各区邮政编码是多少?广州市各区邮政编码:序号 市(地区) 县(区) 邮政编码 01 广州市 510000 02 广州市 市辖区 510000 03 广州市...

哈尔滨的邮编是多少?(黑龙江省哈尔滨市松北区邮编多少?)

哈尔滨的邮编是多少?(黑龙江省哈尔滨市松北区邮编多少?)

大家好,今天小编关注到一个比较有意思的话题,就是关于哈尔滨南岗区邮编的问题,于是小编就整理了5个相关介绍哈尔滨南岗区邮编的解答,让我们一起看看吧。哈尔滨的邮编是多少?南岗区的邮政编码为150000, 哈尔滨市下辖9个市辖区,分别是道里区、南岗区、道外区、平房区、松北区、香坊区、呼兰区、阿城区、双城区...