sql server数据库的列信息查看的 *** 是最常用的操作 *** 之一,本文为您详述了怎么使用T-Sql语句, 在sql server 2005中提取一个数据表的列的详细信息的 *** ,并附sql server的开发实例,供您参考,希望对您有所帮助。
下面介绍的是名为sp_GetColumnsInfo的存储过程,示例中使用了微软提供的AdventureWorks数据库。
USE AdventureWorks;
--Method I: Using System Store Procedure
EXEC SP_COLUMNS @table_name = N'Employee'
SELECT
[columns].NAME AS [Name],
[usertype].NAME AS [DataType],
ISNULL([basetype].NAME, N'') AS [SystemType],
CAST(CASE WHEN [basetype].NAME IN (N'nchar', N'nvarchar') AND [columns].max_length <> -1 THEN
[columns].max_length/2 ELSE [columns].max_length END AS INT) AS [Length],
CAST([columns].PREcisION AS INT) AS [NumericPrecision]
FROM
SYS.TABLES AS [table]
INNER JOIN SYS.ALL_COLUMNS AS [columns] ON [columns].OBJECT_ID=[table].OBJECT_ID
LEFT OUTER JOIN SYS.TYPES AS [usertype] ON [usertype].user_type_id = [columns].user_type_id
LEFT OUTER JOIN SYS.TYPES AS [basetype] ON [basetype].user_type_id = [columns].system_type_id and [basetype].user_type_id = [basetype].system_type_id
WHERE
([table].NAME=@tablename and SCHEMA_NAME([table].schema_id)=@schema)
ORDER BY
[columns].column_id ASC
END
EXEC sp_GetColumnsInfo @schema = N'HumanResources', @tablename = N'Employee'
结果显示
(16 row(s) affected)
sql server数据库的列信息查看的 *** 是最常用的操作 *** 之一,本文为您详述了怎么使用T-Sql语句, 在sql server 2005中提取一个数据表的列的详细信息的 *** ,并附sql server的开发实例,供您参考,希望对您有所帮助。
下面介绍的是名为sp_GetColumnsInfo的存储过程,示例中使用了微软提供的AdventureWorks数据库。
USE AdventureWorks;
--Method I: Using System Store Procedure
EXEC SP_COLUMNS @table_name = N'Employee'
--Method II: Using T-Sql Statement
--If existed, delete the store procedure
IF EXISTS (
SELECT *
FROM INFORMATION_SCHEMA.ROUTINES
WHERE SPECIFIC_SCHEMA = N'dbo'
AND SPECIFIC_NAME = N'sp_GetColumnsInfo'
)
DROP PROCEDURE [dbo].sp_GetColumnsInfo
GO
--create store procedure, two parameters schema name and table name
CREATE PROCEDURE sp_GetColumnsInfo
@schema NVARCHAR(100),
@tablename NVARCHAR(100)
AS
BEGIN
SELECT
[columns].NAME AS [Name],
[usertype].NAME AS [DataType],
ISNULL([basetype].NAME, N'') AS [SystemType],
CAST(CASE WHEN [basetype].NAME IN (N'nchar', N'nvarchar') AND [columns].max_length <> -1 THEN
[columns].max_length/2 ELSE [columns].max_length END AS INT) AS [Length],
CAST([columns].PRECISION AS INT) AS [NumericPrecision]
FROM
SYS.TABLES AS [table]
INNER JOIN SYS.ALL_COLUMNS AS [columns] ON [columns].OBJECT_ID=[table].OBJECT_ID
LEFT OUTER JOIN SYS.TYPES AS [usertype] ON [usertype].user_type_id = [columns].user_type_id
LEFT OUTER JOIN SYS.TYPES AS [basetype] ON [basetype].user_type_id = [columns].system_type_id and [basetype].user_type_id = [basetype].system_type_id
WHERE
([table].NAME=@tablename and SCHEMA_NAME([table].schema_id)=@schema)
ORDER BY
[columns].column_id ASC
END
EXEC sp_GetColumnsInfo @schema = N'HumanResources', @tablename = N'Employee'
结果显示
(16 row(s) affected)
扫描二维码推送至手机访问。
版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。
打开IE浏览器的时候、聊QQ的时候、玩游戏的时候… … 这到底是谁惹的祸呢? 很多人都知道Windows 7桌面特效全部开启会使系统性能降低,那到底是哪个特效导致的这一情况呢? 解决办法: 右键计算机,高级系统设置-性能-设置-关闭”任务栏和开始菜单使用动画“和”最大化和最小化动态显示窗口“...
北京时间1月13日消息,根据计划,微软将于2015年1月13日正式结束对Windows 7SP1的“主流支持”,而这也标志着“扩展支持”阶段的开始,这个阶段将于2020年1月14日结束。 2013年10月份,微软终止销售独立的Windows 7系统安装包,并要求制造商于2014年10月份停止生...
重装系统是我们面对许多电脑问题时的终极方法,不过重装系统也不意味着就能将全部的问题都修复。一些用户在重装系统后开机时,电脑卡在“正在启动Windows”开机界面上了,这要怎么解决呢? Windows 7系统重装后卡在开机界面的解决方法: 一、首先可以看看该故障出现的原因是否是因为启动了acp...
当我在虚拟机的linux系统中ping本机的ip发现ping不通,而本机可以ping通虚拟机中的ip。应该是出于安全考虑吧,Windows 7默认在防火墙里禁止了。 1、查看主机ip 打开“开始”程序中的“附件”,找到“命令提示符”打开。输入命令:ipconfig,可以看到本机的ip是192.1...
故障分析: 主要原因应该是不存在软盘驱动器或驱动器未安装,找到故障原因后,Windows 7 32位系统只要将软盘驱动器禁用就可以了。 解决措施: 1、右键点击计算机,选择管理,打开计算机管理窗口; 2、在计算机管理中,找到设备管理器,在右边的软盘控制器中右击,选择卸载即可。 以...
1月13日消息,微软今天为Windows 7(SP1)用户重新推送了编号为KB2952664的更新补丁,该更新在官方KB知识库中的描述为“Windows 7系统升级兼容性更新”,用于帮助微软改进当前版本系统,提升升级到最新版Win10系统的体验。 这项更新还用于在系统中显示Windows10更新提...