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

在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條評論
主站蜘蛛池模板: 九九九视频 | 国产欧美一区二区三区在线看 | 久久中文字幕2021精品 | 999毛片免费| 欧美成人免费tv在线播放 | 老师在办公室被躁到白浆 | 日本不卡一区二区三区视频 | 欧美国产综合在线 | 欧美成人片在线 | 国产特级毛片aaaaaaa高清 | 日本一级特大毛片 | 国产精品自拍一区 | 成人美女网 | 中文字暮文字暮 | 性久久久久 | 亚洲爽爽 | 国产目拍亚洲精品一区二区三区 | 四虎影业| 国产精品欧美久久久久天天影视 | 青青青青青青久久久免费观看 | 久久久久久久男人的天堂 | 亚洲天堂一区 | 99精品久久久久中文字幕 | 成人精品一区二区三区校园激情 | 日本波多野结衣在线 | 天天干天天爽天天操 | 一级毛片免费不卡在线 | 神马色片 | 国产精品入口麻豆 | 亚洲 国产 图片 | 97福利视频 | 久久九九免费视频 | 中文字幕中韩乱码亚洲大片 | 91视频首页 | 色片在线| 爱爱小视频在线观看网站 | jizzjizz女人中国 | 亚洲精品福利视频 | 亚洲一区二区三区91 | 成年人免费在线视频 | 亚洲性一级理论片在线观看 |