• 查询字段的值属于数据库中的哪个表的哪个列


    输入数据库中包含的某一个字段的值查询到它所归属的表和字段,返回两列数据,第一列是此值归属的表名;第二列是此值对应的第一列中的表的列名。sql实现如下:

    USE [数据库名]
    GO
    /****** Object:  StoredProcedure [dbo].[SP_FindValueInDB]    Script Date: 2017/3/5 10:35:01 
    --此存储过程用于查询一个值属于数据库中的那张表的哪个列,返回结果为两列,一列是表名,一列是列名
    ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER 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 
  • 相关阅读:
    nvm切换node失效
    React.memo is not a function
    Path must be a string. Received true
    如何通过node读取excel文件内的数据
    js中四舍五入的方法
    为什么不推荐使用数组的includes方法---记两次includes引起的问题
    改变input复选框样式
    如何使用伪元素扩大按钮可点击区域
    简单实用的纯css按钮效果
    ie6 ie7 ie8 ie9和FireFox Chrome中css区别总结
  • 原文地址:https://www.cnblogs.com/shuilangyizu/p/6506068.html
Copyright © 2020-2023  润新知