表值函数 fn_getTabStru ——获取某个表的表结构
来源:互联网 发布:部落冲突刷钻石软件 编辑:程序博客网 时间:2024/04/23 14:02
原来写过一个存储过程, 不过现在觉得还是表值函数更方便一些, 特别是在批量处理表中的列时……
IF OBJECT_ID('fn_getTabStru') IS NOT NULL BEGIN DROP FUNCTION fn_getTabStru END GO CREATE FUNCTION fn_getTabStru ( @tableName VARCHAR(100) ) RETURNS TABLE AS RETURN(SELECT t1.Field_en AS [ColumnName], CASE WHEN t1.field_type = 'int' OR t1.field_type = 'smallint' OR t1.field_type = 'datetime' OR t1.field_type = 'tinyint' OR t1.field_type = 'bit' OR t1.field_type = 'date' OR t1.field_type = 'image' OR t1.field_type = 'money' OR t1.field_type = 'text' OR t1.field_type = 'ntext' OR t1.field_type = 'real' OR t1.field_type = 'smalldatetime' OR t1.field_type = 'smallmoney' OR t1.field_type = 'timestamp' OR t1.field_type = 'sql_variant' OR t1.field_type='bigint' OR t1.field_type = 'uniqueidentifier' OR t1.field_type = 'xml' THEN t1.field_type WHEN t1.field_type = 'nvarchar' OR t1.field_type = 'nchar' THEN t1.field_type + '(' + CONVERT(VARCHAR, t1.var_a/2, 10) + ')' ELSE t1.field_type + '(' + CONVERT(VARCHAR, t1.var_a, 10) + ')' END AS [DataType], CASE WHEN t1.default_value IS NULL THEN '' WHEN t1.default_value = 'getdate()' OR t1.default_value = '(getdate())' THEN 'getdate()' ELSE REPLACE(REPLACE(t1.default_value, '(', ''), ')', '') END AS [DefaultValue], CASE WHEN t1.is_null != 'False' THEN '' ELSE 'NOT NULL' END AS [ISNull], ISNULL(t2.[DESCRIPTION], '') AS [Description] FROM ( SELECT Field_en = NAME, field_type = ( SELECT TOP 1 NAME FROM systypes WHERE systypes.xtype = a.xtype ), var_a = length, is_null = CASE isnullable WHEN 1 THEN 'True ' ELSE 'False ' END, default_value = ( SELECT TOP 1 TEXT FROM syscomments WHERE id = cdefault ) FROM syscolumns a WHERE id = OBJECT_ID(@tableName) ) AS t1 LEFT JOIN ( SELECT DISTINCT(sys.columns.name), ( SELECT VALUE FROM sys.extended_properties WHERE sys.extended_properties.major_id = sys.columns.object_id AND sys.extended_properties.minor_id = sys.columns.column_id ) AS DESCRIPTION FROM sys.columns, sys.tables, sys.types WHERE sys.columns.object_id = sys.tables.object_id AND sys.columns.system_type_id = sys.types.system_type_id AND sys.tables.name = @tableName ) AS t2 ON t1.Field_en = t2.name )
0 0
- 表值函数 fn_getTabStru ——获取某个表的表结构
- 获取数据库其中某个表的结构
- 获取某个表的详细情况
- 获取gp表结构的函数
- oracle导出某个表的表结构
- C# 获取数据库中某个某个表的创建脚本
- oracle 获取某个表某个字段的默认值
- 取某个表某个字段的内容的sql函数
- 获取 某个表 的 主键名
- PE结构---获取导入表中函数的实际地址
- 使用JDBC函数获取表结构信息
- MYSQL导出某个表的表结构和部分数据
- 查询某个用户所有的表结构语句
- myslq 数据库中查询某个数据库的表结构
- 数据库表结构的获取
- MySQL:获取某个数据库的所有表的名字
- 查询SQLServer2005中某个数据库中的表结构、索引、视图、存储过程、触发器以及自定义函数
- 查询SQLServer2005中某个数据库中的表结构、索引、视图、存储过程、触发器以及自定义函数
- 生成APNS Service证书的步骤
- Windows环境下编译V8
- 配置 GG Manager process 配置
- 获取QRadioButton的值
- MySQL 中的树形数据处理示例
- 表值函数 fn_getTabStru ——获取某个表的表结构
- oracle 大数据 分页
- 调用系统相机
- Git详解之七 自定义Git
- ArcGIS for IOS 坐标系转换
- WebRTC技术
- Android Fragment注入漏洞
- sort(List<T> list, Comparator<? super T> c) 根据比较器产生的顺序排序
- pygame 方向键控制小球