Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

SQL Server:Trích xuất siêu dữ liệu bảng (mô tả, trường và kiểu dữ liệu của chúng)

Để lấy dữ liệu mô tả, rất tiếc, bạn phải sử dụng sysobjects / syscolumns để lấy id:

SELECT      u.name + '.' + t.name AS [table],
            td.value AS [table_desc],
            c.name AS [column],
            cd.value AS [column_desc]
FROM        sysobjects t
INNER JOIN  sysusers u
    ON      u.uid = t.uid
LEFT OUTER JOIN sys.extended_properties td
    ON      td.major_id = t.id
    AND     td.minor_id = 0
    AND     td.name = 'MS_Description'
INNER JOIN  syscolumns c
    ON      c.id = t.id
LEFT OUTER JOIN sys.extended_properties cd
    ON      cd.major_id = c.id
    AND     cd.minor_id = c.colid
    AND     cd.name = 'MS_Description'
WHERE t.type = 'u'
ORDER BY    t.name, c.colorder

Bạn có thể làm điều đó với info-schema, nhưng bạn phải nối vv để gọi OBJECT_ID () - vậy vấn đề là gì?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 11 cách trả về khóa ngoại trong cơ sở dữ liệu máy chủ SQL bằng T-SQL

  2. Làm cách nào để tạo khóa chính làm AUTOINCREMENT

  3. Giới thiệu tính năng mới:Nhóm luôn sẵn có

  4. Tự động gán tên tệp cho chuỗi kết nối excel

  5. Tìm các hàng trùng lặp trong SQL Server