SQL查詢數據庫名、表名、列名


1.獲取所有用戶名
  SELECT name FROM Sysusers where status='2' and islogin='1'
        islogin='1'表示帳戶
        islogin='0'表示角色
        status='2'表示用戶帳戶
        status='0'表示糸統帳戶

2.獲取所有數據庫名
  SELECT Name FROM Master..SysDatabases ORDER BY Name

3.獲取所有表名
  
SELECT Name FROM DatabaseName..SysObjects Where XType='U' ORDER BY Name
        XType='U':表示所有用戶表;
        XType='S':表示所有系統表;

4.獲取所有字段名
  SELECT Name FROM SysColumns WHERE id=Object_Id('TableName')

5.獲取數據庫所有類型
  SELECT name FROM Systypes SQL

6.獲取主鍵字段
  SELECT  name FROM SysColumns WHERE id=Object_Id('TableName') and colid=(SELECT top 1 keyno FROM sysindexkeys WHERE id=Object_Id('TableName'))

注意點:
     (1)syscolumns表中只含有數據類型編號,要獲取完整的數據類型名字需要從systypes表中找,一般用戶使用的數據類型用xusertype對應比較好,不會出現一對多的情況。
     (2)syscolumns.length得到的是物理內存的長度,所以nvarchar和varchar等類型在數據庫中的顯示是這個的一半。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM