SQL Server如何对特定对象搜索,SQL语句是什么
Admin 2022-08-03 群英技术资讯 499 次浏览
检索数据库架构信息 - ADO.NET | Microsoft 官方文档
将系统表映射到系统视图 (Transact-sql) - SQL Server | Microsoft 官方文档
主要用到 sys.tables 、sys.columns 、sys.procedures 系统对象表以及sys.extended_properties 扩展属性表
--查询列 SELECT A.name AS table_name , B.name AS column_name , C.value AS column_description FROM 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_id AND 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_id AND 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_id AND C.minor_id = 0 WHERE CAST(C.[value] AS VARCHAR(1000)) LIKE '%年假%'
主要用到 dbo.sysobjects 系统对象表以及sys.all_sql_modules 对象定义语句表
--老方式 SELECT DISTINCT b.name, b.xtype FROM dbo.syscomments a, dbo.sysobjects b WHERE a.id = b.id AND b.xtype = 'p' AND a.text LIKE '%LotMax%' ORDER BY name; --从 2008 开始,新方式 SELECT name, type_desc FROM sys.all_sql_modules s INNER JOIN sys.all_objects o ON s.object_id = o.object_id WHERE definition LIKE '%LotMax%' ORDER BY type_desc, name;
select A.name as table_name, B.name as column_name from sys.tables A inner join sys.columns B on B.object_id = A.object_id where B.name like '%File%' order by A.name, B.name;
完整的列属性:
with indexCTE as ( 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 / 2 when systype.name = 'nchar' and colm.max_length > 0 then colm.max_length / 2 when 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 Remark from 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_id where colm.object_id = object_id('MouldTestResultDetail') order by colm.column_id;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要给大家介绍了关于SQL Server中row_number函数的常见用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本文通过几个小例子,给大家分享一下常用SQL常用的语句,非常的简单实用,有需要的小伙伴可以参考下。
SQL CREATE TABLE 语句用于创建数据库中的表。表由行和列组成,每个表都必须有个表名。有不少朋友对此感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
SQL Server常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞。关于SqlServer异常处理常用步骤有哪些呢?大家了解吗?下面小编通过本篇文章给大家介绍SqlServer异常处理常用步骤,感兴趣的朋友就继续往下看吧。
DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection(俗称:非断开式连接),在线操作数据库时,任何对SqlConnection的操作都会引发DataReader的异常。下面同本文对dataset与datareader的区别详细学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008