色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql查詢整個(gè)表,如何判斷MySQLOraclePostgreSql數(shù)據(jù)庫中某表或字段是否存在

mysql查詢整個(gè)表,如何判斷MySQLOraclePostgreSql數(shù)據(jù)庫中某表或字段是否存在?

我是點(diǎn)點(diǎn)小萱,這個(gè)問題我來回答。

MySQL

MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。因?yàn)镸ySQL是開放源碼的,所以一般的中小型網(wǎng)站的開發(fā)都選擇將MySQL作為網(wǎng)站數(shù)據(jù)庫,這樣可以大大降低總體擁有的成本。

那么下面來看看,MySQL中,是怎么判斷數(shù)據(jù)庫中表或者字段是否存在的。

查看表是否存在總共有3種方法:

先進(jìn)入到要查看表的某個(gè)數(shù)據(jù)庫

①查看數(shù)據(jù)庫所有的表:

SHOW TABLES;

這個(gè)會(huì)列出所有的數(shù)據(jù)庫表名。

②根據(jù)數(shù)據(jù)庫名稱查看表是否存在

SHOW TABLES LIKE 'table_name';

③通過MySql自帶的數(shù)據(jù)庫information_schema查看表

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

注意:另外我們?cè)趧?chuàng)建表的時(shí)候,會(huì)經(jīng)常用到這樣的一句sql:

drop table if exists table_name;

如果存在表則先刪除該表。

查看表中某個(gè)字段是否存在有3種方法:

①describe命令查看表的詳細(xì)設(shè)計(jì)

describe table_name;

該語句會(huì)列出表中所有的字段信息。

②describe命令查詢具體列(字段)的信息

describe table_name column;

表中某列的具體信息。

③通過"show comnus"命令來查看數(shù)據(jù)庫中表的列名:

show columns from database_name.table_name

或者show columns form table_name from database_name

Oracle

Oracle是一個(gè)關(guān)系數(shù)據(jù)庫管理系統(tǒng)。Oracle數(shù)據(jù)庫可移植性好、使用方便、功能強(qiáng)大,使用于各個(gè)領(lǐng)域的大、中、小、微機(jī)環(huán)境,在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位。

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

①查看當(dāng)前登錄用戶中的所有表中是否存在該表

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

注意表名區(qū)分大小寫,如果參數(shù)不限制,那這里就必須要加上函數(shù)。

②查詢某個(gè)用戶下的表中是否存在該表

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

這個(gè)語句可以在當(dāng)前用戶下查詢其他用戶下的表信息。

查看表中某個(gè)字段是否存在有2種方法:

①通過獲取表中的字段來判斷

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

會(huì)列出該表中所有的字段信息。

②直接根據(jù)字段名稱來查詢

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

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

PostgreSql

PostgreSql是一個(gè)對(duì)象關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。它支持大部分的SQL標(biāo)準(zhǔn)語法,并且支持復(fù)雜查詢、外鍵、觸發(fā)器、視圖、事務(wù)完整性、多版本并發(fā)控制等特性。

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

①使用pg_class系統(tǒng)表來查找

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';

查看表中某個(gè)字段是否存在有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;

會(huì)列出該表中所有的字段信息。

②直接根據(jù)字段名稱來查詢

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

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

以上就是小編的回答了,純屬個(gè)人觀點(diǎn),如有不足之處,歡迎點(diǎn)評(píng)、建議。

我是點(diǎn)點(diǎn)小萱。