日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

SQL基础操作_3_数据字典(涵盖SQL Server、Oracle、Mysql常见系统数据字典)

發布時間:2024/9/27 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL基础操作_3_数据字典(涵盖SQL Server、Oracle、Mysql常见系统数据字典) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

數據庫元數據查詢

7.5.1 列出模式中所有的表

7.5.2 列出所有的數據庫

7.5.3 列出給定表的基本信息

7.5.4 列出給定表的索引信息

7.5.5 列出給定表的主鍵、外鍵約束

7.5.6 列出給定表的外鍵引用

7.5.7 列出給定表的檢查約束

7.5.8 列出給定表的默認約束

7.5.9 列出給定表的所有約束

7.5.10 列出數據庫里的所有對象


? ? ? ? ? ? ? ? ? ? ? ? ? ?數據庫元數據查詢

注:數據集和表結構見?SQL基礎操作_1_檢索數據

7.5.1 列出模式中所有的表

需求:查詢給定模式下創建的所有表和創建時間。

解決方法:通過各個數據庫里提供的系統視圖查詢。

Sql Server:

USE Shenl; GO SELECT TABLE_NAME FROM INFORMATION_SCHEMA.tables WHERE TABLE_TYPE='BASE TABLE'

或:

SELECT NAME as table_name FROM SYSOBJECTS WHERE XTYPE='U' ORDER BY NAME

或:

SELECT name as table_name,create_date as create_time FROM [sys].[all_objects] WHERE type='U' AND is_ms_shipped=0 ORDER BY NAME

執行結果:

Database_Name

Create_time

master

2003-04-08 09:13:36.390

tempdb

2017-04-16 09:36:02.723

model

2003-04-08 09:13:36.390

msdb

2014-02-20 20:49:38.857

ReportServer

2017-03-19 09:58:21.533

ReportServerTempDB

2017-03-19 09:58:22.640

AdventureWorks2014

2017-03-19 15:34:10.683

AdventureWorksDW2014

2017-03-19 15:39:02.770

Shenl

2017-04-11 12:57:23.723

Mysql:

use shenl; SELECT TABLE_NAME,CREATE_TIME,TABLE_COMMENT FROM INFORMATION_SCHEMA.tables WHERE TABLE_TYPE='BASE TABLE' AND TABLE_SCHEMA='shenl' ORDER BY TABLE_COMMENT DESC

執行結果:

TABLE_NAME

CREATE_TIME

TABLE_COMMENT

emp

2017/4/16 9:14:40

雇員表

dept

2017/4/16 9:14:39

部門表

salgrade

2017/4/16 9:14:41

工資等級表

bonus

2017/4/16 9:14:41

獎金表

Oracle:

SELECT TABLE_NAME FROM USER_TABLES; SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER='SHENL;SELECT OBJECT_NAME ,CREATED FROM ALL_OBJECTS WHERE OBJECT_TYPE='TABLE' AND OWNER='SHENL' ORDER BY CREATED DESC

執行結果:

table_name

create_time

TMP_V

2017/3/31 18:49:06

SALGRADE

2017/3/27 15:25:47

BONUS

2017/3/27 15:25:47

DEPT

2017/3/27 15:25:46

EMP

2017/3/27 15:25:44

7.5.2 列出所有的數據庫

需求:查詢給當前數據庫實例下所有的數據庫名和創建時間。

解決方法:通過各個數據庫里提供的與數據庫相關的數據字典進行查詢。

SqlServer:

SELECT NAME AS Database_Name,create_date AS Create_time FROM sys.databases

執行結果:

Database_Name

Create_time

master

2003-04-08 09:13:36.390

tempdb

2017-04-16 09:36:02.723

model

2003-04-08 09:13:36.390

msdb

2014-02-20 20:49:38.857

ReportServer

2017-03-19 09:58:21.533

ReportServerTempDB

2017-03-19 09:58:22.640

AdventureWorks2014

2017-03-19 15:34:10.683

AdventureWorksDW2014

2017-03-19 15:39:02.770

Shenl

2017-04-11 12:57:23.723

Oracle:

Oracle里的數據庫概念跟Sql Server略有不同,oracle里一個數據庫對應多個實例,當然在Sql Server里也可以安裝多個實例。不過一般不這么做。Oralce里的用戶類似于Sql Server里的數據庫,即一個用戶下可能會有很多表。所以當前命題可以查詢當前實例里的用戶名。

注: 這里關于oracle的數據庫、數據庫實例、表空間、表、用戶沒有做過多的展開。簡單的說一個數據庫可以對應多個數據庫實例,而一個數據庫實例對應多個表空間,每個表空間對應多個用戶和數據庫文件。一個用戶可以創建多個表。見下圖示意:

select name from v$database; select USERNAME,Created AS Create_time from dba_users;

執行結果:

USERNAME

Create_time

Sys

2003-04-08 09:13:36.390

Scott

2003-04-16 09:36:02.723

Shenl

2003-04-08 09:13:36.390

注:

1 oralce數據庫、實例、表空間、用戶、表分析參考來源 http://blog.csdn.net/haiross/article/details/20357675

2 用戶數據較多,這里用…省略。

Mysql:

show databases -- 或 SELECT SCHEMA_NAME FROM information_schema.SCHEMATA

執行結果:? ? ? ??

SCHEMA_NAME

information_schema

mysql

performance_schema

shenl

7.5.3 列出給定表的基本信息

需求:查詢出給定的表dept,emp,bonus,salgrade里的表名,字段名、字段類型、字段注釋、表注釋信息。

解決方法:通過各個數據庫里提供的與數據庫相關的數據字典進行查詢。

Oracle:

SELECT B.TABLE_NAME,B.COLUMN_NAME,B.DATA_TYPE,A.COMMENTSAS Table_Comm ,C.COMMENTSASColumn_Comm from user_tab_comments A JOIN user_tab_columns B ON A.TABLE_NAME = B.TABLE_NAME JOIN user_col_comments C ON B.TABLE_NAME = C.TABLE_NAME AND B.COLUMN_NAME = C.COLUMN_NAME WHERE A.TABLE_NAME IN ('DEPT','EMP','BONUS','SALGRADE')

Mysql:

SELECT A.TABLE_NAME,A.COLUMN_NAME,A.DATA_TYPE,B.TABLE_COMMENTAS Table_Comm,A.COLUMN_COMMENT AS Column_Comm FROM INFORMATION_SCHEMA.COLUMNS A JOIN INFORMATION_SCHEMA.TABLES B ON A.TABLE_NAME = B.TABLE_NAME WHERE A.TABLE_SCHEMA='SHENL' AND A.TABLE_NAME IN('DEPT','EMP','BONUS','SALGRADE')

SqlServer:

USE Shenl; GO SELECTA.name AS table_name,B.name AS column_name,C.name AS data_type,D.value AS column_comm FROM sys.tables A INNER JOIN ( SELECT B.object_id,NULL AS name,NULL AS user_type_id,0 as column_id FROMsys.tables A INNER JOIN sys.columns BON B.object_id= A.object_idWHERE A.name IN ('dept','emp','bonus','salgrade') AND column_id = 1 UNION SELECT object_id,name,user_type_id,column_id FROM sys.columns )BON B.object_id= A.object_id LEFT JOIN sys.systypes C ON B.user_type_id= C.xtype INNER JOIN sys.extended_properties DON D.major_id= B.object_id ANDD.minor_id = B.column_id WHERE A.name IN ('dept','emp','bonus','salgrade') ORDER BY A.name-- 或:USE Shenl; GO SELECT table_name,column_name,data_type,column_comm,F.value as table_comm FROM ( SELECT A.object_id AS Object_id,A.name AS table_name,B.name AS column_name,C.name AS data_type,D.value AS column_comm FROM sys.tables A INNER JOIN sys.columns BON B.object_id= A.object_id LEFT JOIN sys.systypes C ON B.user_type_id= C.xtype INNER JOIN sys.extended_properties DON D.major_id= B.object_id ANDD.minor_id = B.column_id WHERE A.name IN ('dept','emp','bonus','salgrade') )E JOIN ( SELECT major_id,value FROM sys.extended_propertiesA JOIN sys.tables B ON A.major_id= B.object_id AND B.name IN ('dept','emp','bonus','salgrade') AND A.minor_id = 0 )F ON E.object_id= F.major_id

執行結果:

table_name

column_name

data_type

column_comm

table_comm

dept

deptno

int

部門編號

部門表

dept

dname

varchar

部門名稱

部門表

dept

loc

varchar

部門所在位置

部門表

emp

empno

int

雇員編號

雇員表

emp

ename

varchar

雇員名稱

雇員表

emp

job

varchar

雇員職位

雇員表

emp

mgr

int

雇員對應的領導的編號

雇員表

emp

hiredate

date

雇員的雇傭日期

雇員表

emp

sal

decimal

雇員的基本工資

雇員表

emp

comm

decimal

獎金

雇員表

emp

deptno

int

所在部門

雇員表

salgrade

grade

int

工資等級

工資等級表

salgrade

losal

int

此等級的最低工資

工資等級表

salgrade

hisal

int

此等級的最高工資

工資等級表

bonus

ename

varchar

雇員姓名

獎金表

bonus

job

varchar

雇員職位

獎金表

bonus

sal

decimal

雇員工資

獎金表

bonus

comm

decimal

雇員資金

獎金表

注:

1 sql server里的第一種實現方式是將表的注釋作為一行,其它字段如(column_name、data_type)均以NULL值顯示。

2 如果不了解各個數據庫的注釋方式,如下做個簡單示例:

Oracle:

comment on table EMP is '雇員表'; comment on column EMP.EMPNO is '雇員的編號,由四位數字所組成';

Sql Server:

sql server里的注釋存儲在系統表sys.extended_properties中,一般我們通過調用存儲過程sp_addextendedproperty來對表和字段加注釋。

EXECUTE sp_addextendedproperty N'MS_Description',N'獎金表',N'user',N'dbo',N'table',N'bonus',NULL,NULL EXECUTE sp_addextendedproperty N'MS_Description',N'雇員姓名',N'user',N'dbo',N'table',N'bonus',N'column',N'ename'

Mysql:

ALTER TABLE `EMP` COMMENT '雇員表'; ALTER TABLE `EMP` MODIFY COLUMN `empno` COMMENT '雇員編號';

7.5.4 列出給定表的索引信息

需求:查詢出給定的表emp的索引信息。

解決方法:通過各個數據庫里提供的與索引相關的數據字典進行查詢。

Oracle:

CREATE INDEX Idx_EMP_EMPNO ON EMP(EMPNO);SELECT table_name,index_name,column_name,column_position FROM sys.all_ind_columns WHERE table_name ='EMP'ANDtable_owner='SHENL';

執行結果:

TABLE_NAME

INDEX_NAME

COLUMN_NAME

COLUMN_POSITION

EMP

IDX_EMP_EMPNO

EMPNO

1

Sql Server:

SELECT a.name AS table_name, b.name AS index_name, d.name AS column_name, c.index_column_id FROM sys.tables a,sys.indexes b,sys.index_columns c,sys.columns d WHERE a.object_id= b.object_idAND b.object_id= c.object_idAND b.index_id= c.index_idAND c.object_id= d.object_idAND c.column_id= d.column_idAND a.name='EMP'

執行結果:

table_name

index_name

column_name

index_column_id

emp

PK__emp__AF4C318A634F478A

empno

1

Mysql:

show indexfrom emp;

7.5.5 列出給定表的主鍵、外鍵約束

需求:查詢出給定的表emp的外鍵約束信息。

解決方法:通過各個數據庫里提供的與外鍵約束相關的數據字典進行查詢。

SqlServer:

SELECT a.table_name, a.CONSTRAINT_NAME, b.COLUMN_NAME, a.CONSTRAINT_TYPE FROM information_schema.table_constraints a, information_schema.key_column_usage b WHERE a.table_name='EMP' -- AND a.table_schema='SHENL' AND a.table_name= b.table_name AND a.table_schema= b.table_schema AND a.constraint_name= b.constraint_name

執行結果:

table_name

CONSTRAINT_NAME

COLUMN_NAME

CONSTRAINT_TYPE

emp

FK__emp__deptno__38996AB5

deptno

FOREIGN KEY

emp

PK__emp__AF4C318A634F478A

empno

PRIMARY KEY

如果只是查主鍵信息可以:

SELECTtab.name AS table_name,idx.name AS pk_name,col.name AS column_name FROMsys.indexes idxJOIN sys.index_columns idxColON idx.object_id= idxCol.object_idAND idx.index_id=idxCol.index_idAND idx.is_primary_key= 1JOIN sys.tables tabON idx.object_id= tab.object_idJOIN sys.columns colON idx.object_id= col.object_idAND idxCol.column_id=col.column_idAND tab.name='EMP'? ??

執行結果:

table_name

pk_name

column_name

emp

PK__emp__AF4C318A634F478A

empno

注:

1 如果想查唯一約束可以將上述高亮處修改為:

ANDidx.is_unique_constraint = 1。

2 默認情況下會在基于主鍵建立個索引。

3 這里說的主外鍵約束對應constraint,一般包括PK、FK、UK即主鍵、外鍵、唯一鍵。而約束一般指的是default、check即默認值約束、檢查約束。

Mysql:

SELECT CONSTRAINT_NAME,TABLE_NAME,COLUMN_NAME,REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAMEFROM INFORMATION_SCHEMA.KEY_COLUMN_USAGEWHERE TABLE_SCHEMA='SHENL' AND TABLE_NAME IN('emp')

Oracle:

SELECT A.CONSTRAINT_NAME,A.TABLE_NAME,A.COLUMN_NAME,B.CONSTRAINT_TYPE FROM USER_CONS_COLUMNS A,USER_CONSTRAINTS B WHERE A.CONSTRAINT_NAME =B.CONSTRAINT_NAMEAND B.CONSTRAINT_TYPEIN('P','R')AND A.TABLE_NAME ='EMP'

7.5.6 列出給定表的外鍵引用

需求:查詢出給定的表emp的外鍵約束信息。

解決方法:通過各個數據庫里提供的與外鍵約束相關的數據字典進行查詢。

SqlServer:

SELECTRefObj.name AS RefTab_Name,fk.name AS Fk_Name,RefCol.name AS RefTab_Column_Name,RefedObj.name AS RefedTab_Name,RefedCol.name AS RefedTab_Column_Name FROM sys.foreign_keys fk JOIN sys.all_objects RefObj ON fk.parent_object_id= RefObj.object_id JOIN sys.all_objects RefedObjON fk.referenced_object_id=RefedObj.object_id JOIN sys.foreign_key_columns fkColsON fk.object_id= fkCols.constraint_object_id JOIN sys.columns RefColON RefObj.object_id= RefCol.object_id AND fkCols.parent_column_id=RefCol.column_id JOIN sys.columns RefedColON RefedObj.object_id= RefedCol.object_id AND fkCols.referenced_column_id=RefedCol.column_id;

執行結果:

RefTab_Name

Fk_Name

RefTab_Column_Name

RefedTab_Name

RefedTab_Column_Name

emp

FK__emp__deptno__38996AB5

deptno

dept

deptno

Mysql:

SELECT CONSTRAINT_NAME,TABLE_NAME,COLUMN_NAME,REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAMEFROM INFORMATION_SCHEMA.KEY_COLUMN_USAGEWHERE TABLE_SCHEMA='SHENL' AND TABLE_NAME IN('emp') AND REFERENCED_TABLE_NAME IS NOT NULL

Oracle:

SELECT A.CONSTRAINT_NAME,A.TABLE_NAME,A.COLUMN_NAME,B.CONSTRAINT_TYPE FROM USER_CONS_COLUMNS A,USER_CONSTRAINTS B WHERE A.CONSTRAINT_NAME =B.CONSTRAINT_NAMEAND B.CONSTRAINT_TYPEIN('R')AND A.TABLE_NAME ='EMP'

7.5.7 列出給定表的檢查約束

需求:查詢出給定的表emp的檢查約束(check)信息。

解決方法:通過各個數據庫里提供的與檢查約束(check)相關的數據字典進行查詢。

SqlServer:

-- 新增check約束以檢查emp表的enmae字段長度不超過16 ALTER TABLE EMP DROP CONSTRAINT CK_Emp_Ename; ALTER TABLE EMP ADD CONSTRAINT CK_Emp_Ename CHECK(LEN(ename)<16); SELECT A.name AS CKConstraint_Name,B.name AS Table_Name,C.name AS CKConstraint_ColumnName,A.definition AS DF_Def,A.create_date AS Create_time,A.modify_date AS Modify_time FROM sys.check_constraints A JOIN sys.tables BON A.parent_object_id= B.object_id JOIN sys.columns CON B.object_id= C.object_idAND A.parent_column_id= C.column_id

執行結果:

CKConstraint_Name

Table_Name

CKConstraint_ColumnName

DF_Def

Create_time

Modify_time

CK_Emp_Ename

emp

ename

(len([ename])<(16))

2017-04-19 10:17:41.640

2017-04-19 10:17:41.640

Mysql:

ALTER TABLE EMP ADD CONSTRAINT CK_Emp_Ename CHECK (LEN(ename)<16);

;Mysql數據字典里沒有存check約束,所以暫時無法查閱。

Oracle:

ALTER TABLE EMP ADD CONSTRAINT CK_Emp_Ename CHECK (LENGTH(ename)<15);SELECT A.CONSTRAINT_NAME,A.TABLE_NAME,A.COLUMN_NAME,B.CONSTRAINT_TYPE FROM USER_CONS_COLUMNS A,USER_CONSTRAINTS B WHERE A.CONSTRAINT_NAME =B.CONSTRAINT_NAMEAND B.CONSTRAINT_TYPEIN('C')AND A.TABLE_NAME ='EMP'

7.5.8 列出給定表的默認約束

需求:查詢出給定的表emp的默認約束(default)信息。

解決方法:通過各個數據庫里提供的與默認約束(default)相關的數據字典進行查詢。

SqlServer:

-- 新增default約束以設置emp表的comm默認值是0 alter table EMP drop constraint DF_EMP_Comm; alter table EMP add constraint DF_EMP_Comm DEFAULT((0)) for comm; alter table EMP with check add constraint DF_EMP_Comm DEFAULT((0)) for comm; alter table EMP with nocheck add constraint DF_EMP_Comm DEFAULT((0)) for comm;SELECT A.name AS DFConstraint_Name,B.name AS Table_Name,C.name AS DFConstraint_ColumnName,A.definition AS DF_Def,A.create_date AS Create_time,A.modify_date AS Modify_time FROM sys.default_constraints A JOIN sys.tables BON A.parent_object_id= B.object_id JOIN sys.columns CON B.object_id= C.object_id AND A.parent_column_id= C.column_id;

執行結果:

DFConstraint_Name

Table_Name

DFConstraint_ColumnName

DF_Def

Create_time

Modify_time

DF_EMP_Comm

emp

comm

((0))

2017-04-19 09:24:14.050

2017-04-19 09:24:14.050

Mysql:

SELECT TABLE_NAME,COLUMN_NAME,COLUMN_DEFAULT FROM information_schema.columns WHERE TABLE_NAME = 'EMP' AND column_default IS NOT NULL

Oracle:

alter table EMP modify comm default 0; SELECT t.COLUMN_NAME,t.nullable,t.data_default FROM USER_TAB_COLS t WHERE TABLE_NAME ='EMP'AND data_default IS NOT NULL

7.5.9 列出給定表的所有約束

需求:查詢出給定的表emp的相關的約束信息。

解決方法:通過各個數據庫里提供的與約束相關的數據字典進行查詢。

SqlServer:

SELECT B.name AS Constraint_Name,B.type,CASE B.type WHEN 'PK' THEN '主鍵'WHEN 'F'THEN '外鍵'WHEN 'D'THEN '默認值約束'WHEN 'C'THEN '檢查約束' END AS ConstaintType_Desc,CASE B.type WHEN 'PK' THEN G.COLUMN_NAMEWHEN 'F' THEN G.COLUMN_NAMEWHEN 'D' THEN E.nameWHEN 'C' THEN F.name END AS Column_name,CASE B.type WHEN 'PK' THEN NULLWHEN 'F' THEN NULLWHEN 'D' THEN C.definitionWHEN 'C' THEN D.definition END AS Define,B.create_date AS Create_Time,B.modify_date AS Modify_TimeFROM sys.all_objects AJOIN sys.all_objects BON A.object_id= B.parent_object_idJOIN sys.default_constraints CON B.parent_object_id= B.parent_object_idJOIN sys.check_constraints DON B.parent_object_id= D.parent_object_idJOIN sys.all_columns EON E.object_id= C.parent_object_idAND C.parent_column_id= E.column_idJOIN sys.all_columns FON F.object_id= D.parent_object_idAND D.parent_column_id= F.column_id LEFT JOIN information_schema.key_column_usage GON B.name= G.CONSTRAINT_NAME WHERE A.NAME='EMP'

執行結果:

Constraint_Name

type

ConstaintType_Desc

Column_name

Define

Create_Time

Modify_Time

PK__emp__AF4C318A634F478A

PK

主鍵

empno

NULL

2017-03-27 16:27:00.583

2017-03-27 16:27:00.583

FK__emp__deptno__38996AB5

F

外鍵

deptno

NULL

2017-03-27 16:27:00.583

2017-03-27 16:27:00.583

DF_EMP_Comm

D

默認值約束

comm

((0))

2017-04-19 09:24:14.050

2017-04-19 09:24:14.050

CK_Emp_Ename

C

檢查約束

ename

(len([ename])<(16))

2017-04-19 10:17:41.640

2017-04-19 10:17:41.640

注:

sys.all_objects里的type的枚舉類型有如下:

執行結果:

type

數據庫對象類型

AF

聚合函數(CLR)

C

CHECK約束

D

DEFAULT(約束或獨立)

F

FOREIGNKEY約束

PK

PRIMARYKEY約束

P

SQL存儲過程

PC

程序集(CLR)存儲過程

FN

SQL標量函數

FS

程序集(CLR)標量函數

FT

程序集(CLR)表值函數

R

規則(舊式,獨立)

RF

復制篩選過程

SN

同義詞

SQ

服務隊列

TA

程序集(CLR)DML觸發器

TR

SQLDML觸發器

IF

SQL內聯表值函數

TF

SQL表值函數

U

表(用戶定義類型)

UQ

UNIQUE約束

V

視圖

X

擴展存儲過程

IT

內部表

注:數據庫對象類型這列為自己添加的備注。

Mysql:注意mysql內并無同一視圖可以滿足上述需求。

Oracle:

SELECT A.CONSTRAINT_NAME,A.TABLE_NAME,A.COLUMN_NAME,B.CONSTRAINT_TYPE FROM USER_CONS_COLUMNS A,USER_CONSTRAINTS B WHERE A.CONSTRAINT_NAME =B.CONSTRAINT_NAMEAND A.TABLE_NAME ='EMP'

7.5.10 列出數據庫里的所有對象

需求:查詢出給定的數據庫里的所有對象的信息。

解決方法:通過各個數據庫里提供的數據對象相關的數據字典進行查詢。

SqlServer:

SELECT name,object_id,parent_object_id,type,type_desc,create_date,modify_date FROM sys.all_objects WHERE is_ms_shipped = 0

執行結果:

name

object_id

parent_object_id

type

type_desc

create_date

modify_date

tb_marketrecommlog

245575913

0

U

USER_TABLE

2017-03-25 15:05:20.850

2017-03-25 15:05:20.850

dept

885578193

0

U

USER_TABLE

2017-03-27 16:27:00.580

2017-03-27 16:27:00.583

PK__dept__BE2C337D15A7E7E3

901578250

885578193

PK

PRIMARY_KEY_CONSTRAINT

2017-03-27 16:27:00.580

2017-03-27 16:27:00.580

emp

917578307

0

U

USER_TABLE

2017-03-27 16:27:00.580

2017-04-19 10:17:41.640

PK__emp__AF4C318A634F478A

933578364

917578307

PK

PRIMARY_KEY_CONSTRAINT

2017-03-27 16:27:00.583

2017-03-27 16:27:00.583

FK__emp__deptno__38996AB5

949578421

917578307

F

FOREIGN_KEY_CONSTRAINT

2017-03-27 16:27:00.583

2017-03-27 16:27:00.583

salgrade

965578478

0

U

USER_TABLE

2017-03-27 16:27:00.590

2017-03-27 16:27:00.590

bonus

981578535

0

U

USER_TABLE

2017-03-27 16:27:00.593

2017-03-27 16:27:00.593

tmp_v

1557580587

0

V

VIEW

2017-04-12 10:44:00.703

2017-04-12 10:44:00.703

translate

1573580644

0

FN

SQL_SCALAR_FUNCTION

2017-04-12 10:51:52.840

2017-04-12 10:51:52.840

DF_EMP_Comm

1877581727

917578307

D

DEFAULT_CONSTRAINT

2017-04-19 09:24:14.050

2017-04-19 09:24:14.050

CK_Emp_Ename

1893581784

917578307

C

CHECK_CONSTRAINT

2017-04-19 10:17:41.640

2017-04-19 10:17:41.640

f_splitSTR

1909581841

0

TF

SQL_TABLE_VALUED_FUNCTION

2017-04-19 11:25:32.807

2017-04-19 11:25:32.807

Mysql:暫無相關視圖可以滿足此需求。

Oracle:

SELECT OBJECT_NAME,OBJECT_TYPE FROM DBA_OBJECTS WHERE OWNER=UPPER('SHENL') ?

總結

以上是生活随笔為你收集整理的SQL基础操作_3_数据字典(涵盖SQL Server、Oracle、Mysql常见系统数据字典)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。