如何获取MSSQLServerOracelAccess数据字典信息_MySQL
如果你忘记一个数据库或表的名字,或一个给定的表的结构是什么(例如,它的列叫什么),怎么办? MySQL通过提供数据库及其支持的表的信息的几个语句解决这个问题。
你已经见到了SHOW DATABASES,它列出由服务器管理的数据库。为了找出当前选择了哪个数据库,使用DATABASE()函数:
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| menagerie |
+------------+
如果你还没选择任何数据库,结果是空的。
为了找出当前的数据库包含什么表(例如,当你不能确定一个表的名字),使用这个命令:
mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| event |
| pet |
+---------------------+
如果你想要知道一个表的结构,DESCRIBE命令是有很用的;它显示有关一个表的每个列的信息:
mysql> DESCRIBE pet;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(20) | YES | | NULL | |
| owner | varchar(20) | YES | | NULL | |
| species | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| birth | date | YES | | NULL | |
| death | date | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
Field显示列名字,Type是为列的数据类型,Null表示列是否能包含NULL值,Key显示列是否被索引而Default指定列的缺省值。
如果你在一个表上有索引,SHOW INDEX FROM tbl_name生成有关它们的信息--表说明
SELECT dbo.sysobjects.name AS TableName,
dbo.sysproperties.[value] AS TableDesc
FROM dbo.sysproperties INNER JOIN
dbo.sysobjects ON dbo.sysproperties.id = dbo.sysobjects.id
WHERE (dbo.sysproperties.smallid = 0)
ORDER BY dbo.sysobjects.name
--字段说明
SELECT dbo.sysobjects.name AS TableName, dbo.syscolumns.colid,
dbo.syscolumns.name AS ColName, dbo.sysproperties.[value] AS ColDesc FROM dbo.sysproperties INNER JOIN
dbo.sysobjects ON dbo.sysproperties.id = dbo.sysobjects.id INNER JOIN
dbo.syscolumns ON dbo.sysobjects.id = dbo.syscolumns.id AND
dbo.sysproperties.smallid = dbo.syscolumns.colid
ORDER BY dbo.sysobjects.name, dbo.syscolumns.colid
--主键、外键信息(简化)
select
c_obj.name as CONSTRAINT_NAME
,t_obj.name as TABLE_NAME
,col.name as COLUMN_NAME
,case col.colid
when ref.fkey1 then 1
when ref.fkey2 then 2
when ref.fkey3 then 3
when ref.fkey4 then 4
when ref.fkey5 then 5
when ref.fkey6 then 6
when ref.fkey7 then 7
when ref.fkey8 then 8
when ref.fkey9 then 9
when ref.fkey10 then 10
when ref.fkey11 then 11
when ref.fkey12 then 12
when ref.fkey13 then 13
when ref.fkey14 then 14
when ref.fkey15 then 15
when ref.fkey16 then 16
end as ORDINAL_POSITION
from
sysobjects c_obj
,sysobjects t_obj
,syscolumns col
,sysreferences ref
where
permissions(t_obj.id) != 0
and c_obj.xtype in ('F ')
and t_obj.id = c_obj.parent_obj
and t_obj.id = col.id
and col.colid in
(ref.fkey1,ref.fkey2,ref.fkey3,ref.fkey4,ref.fkey5,ref.fkey6,ref.fkey7,ref.fkey8,ref.fkey9,ref.fkey10,ref.fkey11,ref.fkey12,ref.fkey13,ref.fkey14,ref.fkey15,ref.fkey16)
and c_obj.id = ref.constid
union
select
i.name as CONSTRAINT_NAME
,t_obj.name as TABLE_NAME
,col.name as COLUMN_NAME
,v.number as ORDINAL_POSITION
from
sysobjects c_obj
,sysobjects t_obj
,syscolumns col
,master.dbo.spt_values v
,sysindexes i
where
permissions(t_obj.id) != 0
and c_obj.xtype in ('UQ' ,'PK')
and t_obj.id = c_obj.parent_obj
and t_obj.xtype = 'U'
and t_obj.id = col.id
and col.name = index_col(t_obj.name,i.indid,v.number)
and t_obj.id = i.id
and c_obj.name = i.name
and v.number > 0
and v.number and v.type = 'P'
order by CONSTRAINT_NAME, ORDINAL_POSITION
--主键、外键对照(简化)
select
fc_obj.name as CONSTRAINT_NAME
,i.name as UNIQUE_CONSTRAINT_NAME
from
sysobjects fc_obj
,sysreferences r
,sysindexes i
,sysobjects pc_obj
where
permissions(fc_obj.parent_obj) != 0
and fc_obj.xtype = 'F'
and r.constid = fc_obj.id
and r.rkeyid = i.id
and r.rkeyindid = i.indid
and r.rkeyid = pc_obj.id
----------------- ORACLE -------------------
--表信息
select * from all_tab_comments t
where owner='DBO'
--列信息
select * from all_col_comments t
where owner='DBO'
--主键、外键对照
select OWNER, CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME, R_OWNER, R_CONSTRAINT_NAME
from all_constraints
where owner='DBO' and (Constraint_Type='P' or Constraint_Type='R')
--主键、外键信息
select *
from all_cons_columns
where owner='DBO'
order by Constraint_Name, Position
------------------------- Access ------------------------
//Access中的系统表MSysobjects存储属性的字段是二进制格式,不能直接分析可以采用ADO自带的OpenSchema方法获得相关信息
//use ADOInt.pas
//po: TableName
//DBCon:TADOConnection
/ds:TADODataSet
--表信息
DBCon.OpenSchema(siTables, VarArrayOf([Null, Null, 'Table']), EmptyParam, ds);
--列信息
DBCon.OpenSchema(siColumns, VarArrayOf([Null, Null, 'po']), EmptyParam, ds);
--主键
DBCon.OpenSchema(siPrimaryKeys, EmptyParam, EmptyParam, ds);
--主键、外键对照
DBCon.OpenSchema(siForeignKeys, EmptyParam, EmptyParam, ds);

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

標題:MySQL中查看表格的資料的語句及具體程式碼範例MySQL是一種開源的關係型資料庫管理系統,它被廣泛應用於各種規模的應用程式。在MySQL中,檢視表格的資料是一個非常基礎的操作,以下將介紹如何透過具體的語句和程式碼範例來實現這項操作。首先,我們將介紹透過MySQL命令列工具查看表格的資料的語句及具體程式碼範例。假設我們有一個名為「employees」的表,以下是通

哈醫大臨床藥學就業前景如何儘管全國就業情況不容樂觀,但藥科類畢業生仍有著良好的就業前景。整體來看,藥科類畢業生的供給量少於需求量,各醫藥公司和製藥廠是吸收這類畢業生的主要管道,製藥業對人才的需求也穩定成長。據介紹,近幾年藥物製劑、天然藥物化學等專業的研究生供需比甚至達到1∶10。臨床藥學專業就業方向:臨床醫學專業學生畢業後可在醫療衛生單位、醫學科研等部門從事醫療及預防、醫學科研等方面的工作。就業機會:醫藥代表、醫藥銷售代表、銷售代表、銷售經理、區域銷售經理、招募經理、產品經理、產品專員、護

如何清理temp資料夾隨著我們在電腦上的使用,臨時檔案(temp檔案)會逐漸累積。這些臨時檔案是在我們使用電腦時產生的,例如瀏覽網頁時的快取檔案、軟體安裝時的臨時檔案等。長時間不清理temp資料夾可能會佔據大量磁碟空間,影響電腦運作速度。因此,定期清理temp資料夾是維護電腦效能的必要步驟。下面,我們將介紹清理temp資料夾的一些簡單方法。方法一:手動清理t

最近有小夥伴反應win10鏡像檔案該如何下載,因為市面的鏡像檔案多如牛毛,想找到正規的檔案下載,這可怎麼辦呢?今天小編帶來了下載鏡像的鏈接,詳細的解決步驟,具體的一起來看看吧。 win10鏡像快速下載安裝教學下載連結>>>系統之家Ghostwin101909鏡像64位元版v2019.11<<<>>>Win10鏡像64位元v2019.07<<<>>>Win10鏡像32位元v2019.07<< <1、透過網路檢索

MySQL是一種常用的關聯式資料庫管理系統,它支援重命名表的操作。通常情況下,重新命名表會帶來一定的風險,因此在執行這個操作時應該非常小心謹慎。在本文中,我們將探討如何在MySQL中實作重新命名表的語句,並提供詳細的程式碼範例。在MySQL中,可以使用ALTERTABLE語句來重新命名表。下面是ALTERTABLE重命名語句的基本語法:ALTERTABLEo

如何查看win11電腦配置? win11系統是一款非常實用的電腦作業系統版本,為使用者提供了豐富的功能,讓使用者們能夠有更好的電腦操作體驗,那麼許多使用電腦的小夥伴們都很好奇自己電腦的具體配置,在win11系統中該如何進行這項操作呢?很多小夥伴不知道怎麼詳細操作,小編下面整理了win11電腦配置查看教程,如果你有興趣的話,跟著小編一起往下看看吧! win11電腦設定查看教學1、點選下方工作列的windows圖示或按下鍵盤「windows鍵」開啟開始功能表。 2、在開始功能表中找到「設定」或「sett

Win10系統如何重置?現在有很多小夥伴都是喜歡使用Win10系統的電腦,而在使用電腦的過程中難免會遇到一些無法解決的問題,這時候可以嘗試去重置系統,那麼該如何操作呢?下面就跟著小編一起來看Win10系統重置的教學吧,有需要的用戶可不要錯過。 Win10系統重置的教學 1、點選windows,選擇設定。 2、點選更新和安全性。 3、選擇恢復。 4、右側點選開始,重設此電腦。以上就是【Win10系統如何重置-Win10系統重置的教學】全部內容了,更多精彩教學盡在本站!

重裝系統時環境偵測未通過如何解決需要進行改寫的原因是:手機中毒了,可以安裝手機管家等防毒軟體進行防毒軟體進行防毒2、手機內部儲存了許多垃圾文件,導致手機運作記憶體被佔用。只要清理手機快取即可解決這個問題3、手機記憶體被保存的軟體和檔案佔用太多,需要經常刪除不需要的檔案和軟體沒問題,只要你的硬體設定符合安裝要求,你可以直接使用新的系統磁碟重新安裝系統!你可以使用U盤或硬碟來進行安裝,速度非常快。但是關鍵是要使用相容性好的系統碟(支援IDE、ACHI、RAID模式的安裝),並且能夠自動永久激活,已經經過驗證的。這樣
