热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

查找sqlserver数据库中某一字段在哪

有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名。前提是要将这个存储过程放在所查询的数据库。CREATE

有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名。 前提是要将这个存储过程放在所查询的数据库。 CREATE

  有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,,即可查询出这个值所在的表和字段名。

  前提是要将这个存储过程放在所查询的数据库。

  CREATE PROCEDURE [dbo].[SP_FindValueInDB]

  (

  @value VARCHAR(1024)

  )

  AS

  BEGIN

  -- SET NOCOUNT ON added to prevent extra result sets from

  -- interfering with SELECT statements.

  SET NOCOUNT ON;

  DECLARE @sql VARCHAR(1024)

  DECLARE @table VARCHAR(64)

  DECLARE @column VARCHAR(64)

  CREATE TABLE #t (

  tablename VARCHAR(64),

  columnname VARCHAR(64)

  )

  DECLARE TABLES CURSOR

  FOR

  SELECT o.name, c.name

  FROM syscolumns c

  INNER JOIN sysobjects o ON c.id = o.id

  WHERE o.type = 'U' AND c.xtype IN (167, 175, 231, 239)

  ORDER BY o.name, c.name

  OPEN TABLES

  FETCH NEXT FROM TABLES

  INTO @table, @column

  WHILE @@FETCH_STATUS = 0

  BEGIN

  SET @sql = 'IF EXISTS(SELECT NULL FROM [' + @table + '] '

  SET @sql = @sql + 'WHERE RTRIM(LTRIM([' + @column + '])) LIKE ''%' + @value + '%'') '

  SET @sql = @sql + 'INSERT INTO #t VALUES (''' + @table + ''', '''

  SET @sql = @sql + @column + ''')'

  EXEC(@sql)

  FETCH NEXT FROM TABLES

  INTO @table, @column

  END

  CLOSE TABLES

  DEALLOCATE TABLES

  SELECT *

  FROM #t

  DROP TABLE #t

  End

推荐阅读
  • 本文探讨了随着并发需求的增长,MySQL数据库架构如何从简单的单一实例发展到复杂的分布式系统,以及每一步演进背后的原理和技术解决方案。 ... [详细]
  • 深入理解Java MySQL数据库连接池实现
    尽管利用Apache Commons DBCP等工具可以轻松构建数据库连接池,但本文详细解析了数据库连接池的工作机制,提供了详尽的注释,帮助开发者深入理解其内部运作。这不仅有助于提高数据库操作的效率,还能增强应用程序的稳定性和性能。 ... [详细]
  • 尽管PHP是一种强大且灵活的Web开发语言,但开发者在使用过程中常会陷入一些典型的陷阱。本文旨在列出PHP开发中最为常见的10种错误,并提供相应的预防建议。 ... [详细]
  • 基于Java的学生宿舍管理系统设计
    本论文探讨了如何利用Java技术设计和实现一个高效的学生宿舍管理系统。该系统旨在提高宿舍管理的效率,减少人为错误,同时增强用户体验。通过集成用户认证、数据管理和查询功能,系统能够满足学校宿舍管理的多样化需求。 ... [详细]
  • 本文介绍了MySQL数据库的安全权限管理思想及其制度流程,涵盖从项目开发、数据库更新到日常运维等多个方面的详细流程控制,旨在通过严格的流程管理和权限控制,有效预防数据安全隐患。 ... [详细]
  • MyBatis 开发技巧:延迟加载与查询缓存详解
    本文详细探讨了 MyBatis 中的延迟加载和查询缓存机制,旨在帮助开发者更好地理解和利用这些特性来优化数据库访问性能。 ... [详细]
  • 本项目展示了如何利用Java技术构建一个高效的考勤数据管理系统,特别适用于处理大量数据的情况,如企业员工考勤记录等。项目包括完整的源代码和详细的文档说明,适合用于毕业设计或实际工作场景。 ... [详细]
  • 本文详细解析了 SUCTF 2019 中的 EasySQL 题目,重点探讨了堆叠注入与 UNION 注入的区别及其应用条件。 ... [详细]
  • 本文详细探讨了Xshell6评估版到期后无法使用的常见问题,并提供了有效的解决方案,包括如何合法购买授权以继续使用。 ... [详细]
  • 理解 Hibernate 中的 fetch 和 lazy 属性配置
    本文探讨了在 Hibernate 中如何利用 fetch 和 lazy 属性来优化数据查询效率。通过调整这两个参数,可以有效管理数据库查询的性能,减少不必要的资源消耗。 ... [详细]
  • 深入理解聚簇索引与非聚簇索引及其优化策略
    本文探讨了数据库性能优化中的关键因素——索引,特别是聚簇索引与非聚簇索引的区别及应用场景。通过实例分析,提供了如何有效利用这两种索引来提升数据库查询性能的方法。 ... [详细]
  • 日志记录对于软件开发至关重要,特别是在调试和维护阶段。通过日志,开发者能够追踪错误源头并了解系统的运行状态。本文将探讨如何在Django框架中有效配置和使用日志记录功能。 ... [详细]
  • 一、Merge语句根据条件在表中执行修改或插入数据的功能,如果插入的数据行在目的表中存在就执行UPDATE,如果是不存在则执行INSERT:-避免了单独 ... [详细]
  • 探讨了在使用Layui框架时,如何处理表格中固定列与其他列行高不一致的情况,提供了有效的解决方案。 ... [详细]
  • AJAX技术允许网页在不重新加载整个页面的情况下进行异步更新,通过向服务器发送请求并接收JSON格式的数据,实现局部内容的动态刷新。 ... [详细]
author-avatar
爵士723
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有