文章详情页
SQL Server中搜索特定的对象
浏览:21日期:2023-03-06 14:25:25
一、注释中带某关键字的对象(sys.extended_properties)
主要用到 sys.tables 、sys.columns 、sys.procedures 系统对象表以及sys.extended_properties 扩展属性表
--查询列SELECT A.name AS table_name , B.name AS column_name , C.value AS column_descriptionFROM sys.tables A INNER JOIN sys.columns B ON B.object_id = A.object_id LEFT JOIN sys.extended_properties C ON C.major_id = B.object_idAND C.minor_id = B.column_id WHERE CAST(C.[value] AS VARCHAR(1000)) LIKE "%年假%";--查询表SELECT A.name AS table_name , C.value AS column_description FROM sys.tables A INNER JOIN sys.extended_properties C ON C.major_id = A.object_idAND C.minor_id = 0 WHERE CAST(C.[value] AS VARCHAR(1000)) LIKE "%请假%"--查询存储过程SELECT A.name AS table_name , C.value AS column_description FROM sys.procedures A INNER JOIN sys.extended_properties C ON C.major_id = A.object_idAND C.minor_id = 0 WHERE CAST(C.[value] AS VARCHAR(1000)) LIKE "%年假%"
二、定义语句中带某关键字的对象(sys.all_sql_modules )
主要用到 dbo.sysobjects 系统对象表以及sys.all_sql_modules 对象定义语句表
--老方式SELECT DISTINCT b.name, b.xtypeFROM dbo.syscomments a, dbo.sysobjects bWHERE a.id = b.id AND b.xtype = "p" AND a.text LIKE "%LotMax%"ORDER BY name;--从 2008 开始,新方式SELECT name, type_descFROM sys.all_sql_modules s INNER JOIN sys.all_objects o ON s.object_id = o.object_idWHERE definition LIKE "%LotMax%"ORDER BY type_desc, name;
三、查找列名
select A.name as table_name, B.name as column_namefrom sys.tables A inner join sys.columns B on B.object_id = A.object_idwhere B.name like "%File%" order by A.name, B.name;
完整的列属性:
with indexCTEas ( select ic.column_id, ic.index_column_id, ic.object_id from ZSOtherData.sys.indexes idx inner join ZSOtherData.sys.index_columns ic on idx.index_id = ic.index_id and idx.object_id = ic.object_id where idx.object_id = object_id("MouldTestResultDetail") and idx.is_primary_key = 1 )select colm.column_id ColumnID, cast(case when indexCTE.column_id is null then 0 else 1 end as bit) IsPrimaryKey, colm.name column_name ,object_definition(colm.default_object_id) AS column_def, systype.name type_name, colm.is_identity is_identity,f.keyno as is_foreignkey, colm.is_nullable , cast(colm.max_length as int) ByteLength , ( case when systype.name = "nvarchar" and colm.max_length > 0 then colm.max_length / 2when systype.name = "nchar" and colm.max_length > 0 then colm.max_length / 2when systype.name = "ntext" and colm.max_length > 0 then colm.max_length / 2 else colm.max_length end ) length , cast(colm.precision as int) precision, cast(colm.scale as int) scale,colm.is_computed, prop.value Remarkfrom ZSOtherData.sys.columns colm inner join ZSOtherData.sys.types systype on colm.system_type_id = systype.system_type_id and colm.user_type_id = systype.user_type_id left join ZSOtherData.sys.extended_properties prop on colm.object_id = prop.major_id and colm.column_id = prop.minor_id left join indexCTE on colm.column_id = indexCTE.column_id and colm.object_id = indexCTE.object_id left join sysforeignkeys f on f.fkeyid=colm.object_id and f.fkey=colm.column_idwhere colm.object_id = object_id("MouldTestResultDetail")order by colm.column_id;
到此这篇关于SQL Server搜索特定对象的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。
标签:
MsSQL
相关文章:
1. VS连接SQL server数据库及实现基本CRUD操作2. sql server日期时间函数3. SQL Server 2005 读取xml 文件 突破 varchar 8000 限制4. SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询5. SQL Server 2005使用基于行版本控制的隔离级别初探(1)6. SQL Server 2005 中能够使用 Try...Catch语句7. sql server设置两个主键的方法8. MYSQL SERVER收缩日志文件实现方法9. SQL Server 2008数据库引擎优化顾问与索引优化向导之间的差别10. 如何查看SQL SERVER的版本
排行榜

网公网安备