建立 ORM 時,您可能需要擷取資料庫中的表格清單以及每個表格中的關聯欄位。若要在 SQL Server 中實現此目的,請考慮利用系統預存程序或資料庫視圖。
一種方法涉及使用系統預存程序(例如 sp_tables)來檢索表格清單。對於每個表,您可以使用 sp_columns 來獲取列資訊。
範例:
EXEC sp_tables @table_type = 'TABLE'
或者,您可以利用sys.objects 和sys.columns 等資料庫檢視來查詢物件目錄:
查詢1(使用sys.objects 和sys.columns):
SELECT T.name AS Table_Name, C.name AS Column_Name, P.name AS Data_Type, C.max_length AS Size, CAST(P.precision AS VARCHAR) + '/' + CAST(P.scale AS VARCHAR) AS Precision_Scale FROM sys.objects AS T JOIN sys.columns AS C ON T.object_id = C.object_id JOIN sys.types AS P ON C.system_type_id = P.system_type_id WHERE T.type_desc = 'USER_TABLE';
查詢2(使用INFORMATION_SCHEMA.COLUMNS):
SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, ORDINAL_POSITION, COLUMN_DEFAULT, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, NUMERIC_PRECISION, NUMERIC_PRECISION_RADIX, NUMERIC_SCALE, DATETIME_PRECISION FROM INFORMATION_SCHEMA.COLUMNS;
以上是如何查詢SQL Server表和欄位資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!