方法一:(无法查询字符的最大长度)
--use后面添加表格所在的数据库名,为了定位到表格的位置(即以下查询的语句要在其所在的数据库范围内查询才行)
Use 数据库名;
--此处查询到的空值使用的是bit类型存储,即所显示的是0或者1
SELECT Column_Name as 字符名称,TYPE_NAME(SYSTEM_TYPE_ID) AS 字符类型,Is_NullAble as 是否为空值 from sys.columns where Object_id = OBJECT_ID(N'所要查询的表')
方法二:(该方法可以查询字符的最大长度)
该查询方法可以使用 use 数据库名来指定表格位置,也可以增加一个条件。
1)Use 数据库名;
SELECT Column_Name as 字符名称,DATA_TYPE as 字符类型,CHARACTER_MAXIMUM_LENGTH as 字符最大长度,IS_NULLABLE as 是否为空 FROM information_schema.columns WHERE table_name = '表格名'
2)使用table_Catalog指定数据库
SELECT Column_Name as 字符名称,DATA_TYPE as 字符类型,CHARACTER_MAXIMUM_LENGTH as 字符最大长度,IS_NULLABLE as 是否为空 FROM information_schema.columns WHERE table_Catalog='数据库名' and table_name = '表格名'
如果需要更多的信息可以通过查询 Sys.columns 和 information_schema.columns来看自己指定的数据库表格信息。