亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

在SQL2008查找某數據庫中的列是否存在某個值

系統 1798 0
原文: 在SQL2008查找某數據庫中的列是否存在某個值

在SQL2008查找某數據庫中的列是否存在某個值

      
        --
      
      
        SQL2008查找某數據庫中的列是否存在某個值
      
      
        create
      
      
        proc
      
      
         spFind_Column_In_DB

(

    
      
      
        @type
      
      
        int
      
      ,
      
        --
      
      
        類型:1為文字類型、2為數值類型
      
      
        @str
      
      
        nvarchar
      
      (
      
        100
      
      )
      
        --
      
      
        需要搜索的名字
      
      
        )


      
      
        as
      
      
        --
      
      
        創建臨時表存放結果
      
      
        create
      
      
        table
      
       #tbl(PK 
      
        int
      
      
        identity
      
      
        primary
      
      
        key
      
      
         ,tbl sysname,col sysname)

    
      
      
        declare
      
      
        @tbl
      
      
        nvarchar
      
      (
      
        300
      
      ),
      
        @col
      
       sysname,
      
        @sql
      
      
        nvarchar
      
      (
      
        1000
      
      
        )

    
      
      
        if
      
      
        @type
      
      
        =
      
      
        1
      
      
        begin
      
      
        declare
      
       curTable 
      
        cursor
      
      
         fast_forward

        
      
      
        for
      
      
        select
      
      
        '
      
      
        [
      
      
        '
      
      
        +
      
      SCHEMA_NAME(SCHEMA_ID)
      
        +
      
      
        '
      
      
        ].[
      
      
        '
      
      
        +
      
      o.name
      
        +
      
      
        '
      
      
        ]
      
      
        '
      
       tableName,
      
        '
      
      
        [
      
      
        '
      
      
        +
      
      c.name
      
        +
      
      
        '
      
      
        ]
      
      
        '
      
       columnName 
      
        from
      
       sys.columns c 
      
        inner
      
      
        join
      
       sys.objects o 
      
        on
      
       c.
      
        object_id
      
      
        =
      
      o.
      
        object_id
      
      
        where
      
       o.type_desc
      
        =
      
      
        '
      
      
        user_table
      
      
        '
      
      
        and
      
       user_type_id 
      
        in
      
       (
      
        167
      
      ,
      
        175
      
      ,
      
        231
      
      ,
      
        239
      
      ,
      
        35
      
      ,
      
        99
      
      
        )

     
      
      
        end
      
      
        else
      
      
        begin
      
      
        declare
      
       curTable 
      
        cursor
      
      
         fast_forward

        
      
      
        for
      
      
        select
      
      
        '
      
      
        [
      
      
        '
      
      
        +
      
      SCHEMA_NAME(SCHEMA_ID)
      
        +
      
      
        '
      
      
        ].[
      
      
        '
      
      
        +
      
      o.name
      
        +
      
      
        '
      
      
        ]
      
      
        '
      
       tableName,
      
        '
      
      
        [
      
      
        '
      
      
        +
      
      c.name
      
        +
      
      
        '
      
      
        ]
      
      
        '
      
       columnName 
      
        from
      
       sys.columns c 
      
        inner
      
      
        join
      
       sys.objects o 
      
        on
      
       c.
      
        object_id
      
      
        =
      
      o.
      
        object_id
      
      
        where
      
       o.type_desc
      
        =
      
      
        '
      
      
        user_table
      
      
        '
      
      
        and
      
       user_type_id 
      
        in
      
       (
      
        56
      
      ,
      
        48
      
      ,
      
        52
      
      ,
      
        59
      
      ,
      
        60
      
      ,
      
        62
      
      ,
      
        106
      
      ,
      
        108
      
      ,
      
        122
      
      
        )

    
      
      
        end
      
      
        open
      
      
         curtable

    
      
      
        fetch
      
      
        next
      
      
        from
      
       curtable 
      
        into
      
      
        @tbl
      
      ,
      
        @col
      
      
        while
      
      
        @@FETCH_STATUS
      
      
        =
      
      
        0
      
      
        begin
      
      
        set
      
      
        @sql
      
      
        =
      
      
        '
      
      
        if exists (select * from 
      
      
        '
      
      
        +
      
      
        @tbl
      
      
        +
      
      
        '
      
      
         where 
      
      
        '
      
      
        if
      
      
        @type
      
      
        =
      
      
        1
      
      
        begin
      
      
        set
      
      
        @sql
      
      
        +=
      
      
        @col
      
      
        +
      
      
        '
      
      
         like 
      
      
        ''
      
      
        %
      
      
        '
      
      
        +
      
      
        @str
      
      
        +
      
      
        '
      
      
        %
      
      
        ''
      
      
        )
      
      
        '
      
      
        end
      
      
        else
      
      
        begin
      
      
        set
      
      
        @sql
      
      
        +=
      
      
        @col
      
      
        +
      
      
        '
      
      
         in (
      
      
        '
      
      
        +
      
      
        @str
      
      
        +
      
      
        '
      
      
        ))
      
      
        '
      
      
        end
      
      
        set
      
      
        @sql
      
      
        +=
      
      
        '
      
      
         INSERT #TBL(tbl,col) VALUES(
      
      
        '''
      
      
        +
      
      
        @tbl
      
      
        +
      
      
        '''
      
      
        ,
      
      
        '''
      
      
        +
      
      
        @col
      
      
        +
      
      
        '''
      
      
        )
      
      
        '
      
      
        --
      
      
        print @sql
      
      
        exec
      
       (
      
        @sql
      
      
        )

        
      
      
        fetch
      
      
        next
      
      
        from
      
       curtable 
      
        into
      
      
        @tbl
      
      ,
      
        @col
      
      
        end
      
      
        close
      
      
         curtable 

    
      
      
        deallocate
      
      
         curtable

    
      
      
        select
      
      
        *
      
      
        from
      
      
         #tbl




      
      
        --
      
      
        使用例子,查詢庫中存在aaa這個值的列:
      
      
        exec
      
        spFind_Column_In_DB  
      
        1
      
      ,
      
        '
      
      
        aaa
      
      
        '
      
    

?

在SQL2008查找某數據庫中的列是否存在某個值


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品国产精品国产专区不卡 | 精品无人区乱码一区二区三区手机 | 国产精品久久一区二区三区 | a免费网站 | 久久精品国产99精品最新 | 久久久久国产精品免费网站 | 尤物视频在线免费观看 | 九九视频在线观看6 | 国产综合精品在线 | 奇米影视在线播放 | 丰满寡妇一级毛片 | 亚洲狠狠97婷婷综合久久久久 | 久热中文 | 996re免费热在线视频手机 | 日日噜噜噜夜夜爽爽狠狠69 | 中文字幕1区2区 | 每日更新在线观看av | 99国内视频 | 手机在线精品视频 | 久久久毛片 | a级亚洲片精品久久久久久久 | 亚洲综合日韩 | 国产99欧美精品久久精品久久 | 亚洲欧美日韩人成 | 亚洲国产精品久久综合 | 欧美一级视频免费看 | 黄色录像一级毛片 | 玖玖精品在线 | 色播在线 | 色婷婷婷丁香亚洲综合不卡 | 国语一区| 色综合一本 | 一级香蕉免费毛片 | 亚洲国产二区三区久久 | 50-60岁老妇女一级毛片 | 亚洲国产综合精品中文字幕 | 日日添日日摸 | 日日夜夜摸摸 | 狠狠澡夜夜澡人人爽 | 久久99国产精一区二区三区 | 久久久亚洲欧美综合 |