创建 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 博客资源,请考虑以下内容:
以上是如何查询SQL Server表和字段信息?的详细内容。更多信息请关注PHP中文网其他相关文章!