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

如何判斷MySQL、Oracle、PostgreSql數據庫中某表或字段是否存在?

錢浩然2年前14瀏覽0評論

我是點點小萱,這個問題我來回答。

MySQL

MySQL是一個關系型數據庫管理系統。因為MySQL是開放源碼的,所以一般的中小型網站的開發都選擇將MySQL作為網站數據庫,這樣可以大大降低總體擁有的成本。

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

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

先進入到要查看表的某個數據庫

①查看數據庫所有的表:

SHOWTABLES;

這個會列出所有的數據庫表名。

②根據數據庫名稱查看表是否存在

SHOWTABLESLIKE'table_name';

③通過MySql自帶的數據庫information_schema查看表

SELECTCOUNT(*)FROMinformation_schema.TABLESWHEREtable_name='table_name';

注意:另外我們在創建表的時候,會經常用到這樣的一句sql:

droptableifexiststable_name;

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

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

①describe命令查看表的詳細設計

describetable_name;

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

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

describetable_namecolumn;

表中某列的具體信息。

③通過"showcomnus"命令來查看數據庫中表的列名:

showcolumnsfromdatabase_name.table_name

或者showcolumnsformtable_namefromdatabase_name


Oracle

Oracle是一個關系數據庫管理系統。Oracle數據庫可移植性好、使用方便、功能強大,使用于各個領域的大、中、小、微機環境,在數據庫領域一直處于領先地位。

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

①查看當前登錄用戶中的所有表中是否存在該表

selectcount(*)fromuser_tableswheretable_name=upper('table_name');

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

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

selectcount(*)fromall_tableswhereowner=UPPER('用戶')andtable_name=upper('table_name');

這個語句可以在當前用戶下查詢其他用戶下的表信息。

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

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

select*fromuser_tab_columnswheretable_name='表名'orderbycolumn_name;

會列出該表中所有的字段信息。

②直接根據字段名稱來查詢

selectcount(*)fromuser_tab_columnswheretable_name='表名'andcolumn_name='字段名';

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


PostgreSql

PostgreSql是一個對象關系型數據庫管理系統。它支持大部分的SQL標準語法,并且支持復雜查詢、外鍵、觸發器、視圖、事務完整性、多版本并發控制等特性。

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

①使用pg_class系統表來查找

selectcount(*)frompg_classwhererelname='table_name';

information_schema.tables

來查找

selectcount(*)frominformation_schema.tableswheretable_schema='public'andtable_type='BASETABLE'andtable_name='table_name';

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

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

selectcolumn_name,data_type,character_maximum_length,numeric_precision,

numeric_scalefrominformation_schema.COLUMNSWHEREtable_schema='public'andtable_name='table_name'GROUPBYcolumn_name,data_type,character_maximum_length,numeric_precision,numeric_scale;

會列出該表中所有的字段信息。

②直接根據字段名稱來查詢

selectcount(*)frominformation_schema.columnsWHEREtable_schema='table_schema'andtable_name='table_name'andcolumn_name='column_name';

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


以上就是小編的回答了,純屬個人觀點,如有不足之處,歡迎點評、建議。

我是點點小萱。