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

SQL Server 存儲過程生成insert語句

系統(tǒng) 1798 0
原文: SQL Server 存儲過程生成insert語句

你肯定有過這樣的煩惱,同樣的表,不同的數(shù)據(jù)庫,加入你不能執(zhí)行select ?insert

那么你肯定需要一條這樣的存儲過程,之需要傳入表明,就會給你生成數(shù)據(jù)的插入語句。

當(dāng)然數(shù)據(jù)表數(shù)量太大,你將最好用別的方式

?

        
          Create
        
        
          proc
        
        
          [
        
        
          dbo
        
        
          ]
        
        .
        
          [
        
        
          spGenInsertSQL
        
        
          ]
        
         (
        
          @tablename
        
        
          varchar
        
        (
        
          256
        
        
          ))


        
        
          as
        
        
          begin
        
        
          declare
        
        
          @sql
        
        
          varchar
        
        (
        
          8000
        
        
          )


        
        
          declare
        
        
          @sqlValues
        
        
          varchar
        
        (
        
          8000
        
        
          )


        
        
          set
        
        
          @sql
        
        
          =
        
        
          '
        
        
           (
        
        
          '
        
        
          set
        
        
          @sqlValues
        
        
          =
        
        
          '
        
        
          values (
        
        
          ''
        
        
          +
        
        
          '
        
        
          select
        
        
          @sqlValues
        
        
          =
        
        
          @sqlValues
        
        
          +
        
         cols 
        
          +
        
        
          '
        
        
           + 
        
        
          ''
        
        
          ,
        
        
          ''
        
        
           + 
        
        
          '
        
         ,
        
          @sql
        
        
          =
        
        
          @sql
        
        
          +
        
        
          '
        
        
          [
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
          ],
        
        
          '
        
        
          from
        
        
          

      (
        
        
          select
        
        
          case
        
        
          when
        
         xtype 
        
          in
        
         (
        
          48
        
        ,
        
          52
        
        ,
        
          56
        
        ,
        
          59
        
        ,
        
          60
        
        ,
        
          62
        
        ,
        
          104
        
        ,
        
          106
        
        ,
        
          108
        
        ,
        
          122
        
        ,
        
          127
        
        
          )       



                     
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '
        
        
          cast(
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           as varchar)
        
        
          '
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          when
        
         xtype 
        
          in
        
         (
        
          58
        
        ,
        
          61
        
        
          )

                     
        
        
          --
        
        
          then '''''''''+convert(char(23),'+name+',121)+''''''''' --datetime    
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
           + 
        
        
          '
        
        
          +
        
        
          '
        
        
          cast(
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           as varchar)
        
        
          '
        
        
          +
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          when
        
         xtype 
        
          in
        
         (
        
          167
        
        
          )



                     
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
           + 
        
        
          '
        
        
          +
        
        
          '
        
        
          replace(
        
        
          '
        
        
          +
        
         name
        
          +
        
        
          '
        
        
          ,
        
        
          ''''''''
        
        
          ,
        
        
          ''''''''''''
        
        
          )
        
        
          '
        
        
          +
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          when
        
         xtype 
        
          in
        
         (
        
          231
        
        
          )



                     
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '''
        
        
          N
        
        
          ''''''
        
        
           + 
        
        
          '
        
        
          +
        
        
          '
        
        
          replace(
        
        
          '
        
        
          +
        
         name
        
          +
        
        
          '
        
        
          ,
        
        
          ''''''''
        
        
          ,
        
        
          ''''''''''''
        
        
          )
        
        
          '
        
        
          +
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          when
        
         xtype 
        
          in
        
         (
        
          175
        
        
          )



                     
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '''''''''
        
        
           + 
        
        
          '
        
        
          +
        
        
          '
        
        
          cast(replace(
        
        
          '
        
        
          +
        
         name
        
          +
        
        
          '
        
        
          ,
        
        
          ''''''''
        
        
          ,
        
        
          ''''''''''''
        
        
          ) as Char(
        
        
          '
        
        
          +
        
        
          cast
        
        (length 
        
          as
        
        
          varchar
        
        ) 
        
          +
        
        
          '
        
        
          ))+
        
        
          '''''''''
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          when
        
         xtype 
        
          in
        
         (
        
          239
        
        
          )



                     
        
        
          then
        
        
          '
        
        
          case when 
        
        
          '
        
        
          +
        
         name 
        
          +
        
        
          '
        
        
           is null then 
        
        
          ''
        
        
          NULL
        
        
          ''
        
        
           else 
        
        
          '
        
        
          +
        
        
          '''
        
        
          N
        
        
          ''''''
        
        
           + 
        
        
          '
        
        
          +
        
        
          '
        
        
          cast(replace(
        
        
          '
        
        
          +
        
         name
        
          +
        
        
          '
        
        
          ,
        
        
          ''''''''
        
        
          ,
        
        
          ''''''''''''
        
        
          ) as Char(
        
        
          '
        
        
          +
        
        
          cast
        
        (length 
        
          as
        
        
          varchar
        
        ) 
        
          +
        
        
          '
        
        
          ))+
        
        
          '''''''''
        
        
          +
        
        
          '
        
        
           end
        
        
          '
        
        
          else
        
        
          '''
        
        
          NULL
        
        
          '''
        
        
          end
        
        
          as
        
        
           Cols,name



         
        
        
          from
        
        
           syscolumns 



        
        
        
          where
        
         id 
        
          =
        
        
          object_id
        
        (
        
          @tablename
        
        
          )



      ) T


        
        
          set
        
        
          @sql
        
        
          =
        
        
          '
        
        
          select 
        
        
          ''
        
        
          INSERT INTO [
        
        
          '
        
        
          +
        
        
          @tablename
        
        
          +
        
        
          '
        
        
          ]
        
        
          '
        
        
          +
        
        
          left
        
        (
        
          @sql
        
        ,
        
          len
        
        (
        
          @sql
        
        )
        
          -
        
        
          1
        
        )
        
          +
        
        
          '
        
        
          ) 
        
        
          '
        
        
          +
        
        
          left
        
        (
        
          @sqlValues
        
        ,
        
          len
        
        (
        
          @sqlValues
        
        )
        
          -
        
        
          4
        
        ) 
        
          +
        
        
          '
        
        
          )
        
        
          ''
        
        
           from 
        
        
          '
        
        
          +
        
        
          @tablename
        
        
          print
        
        
          @sql
        
        
          exec
        
         (
        
          @sql
        
        
          )


        
        
          end
        
      
SQL語句

?

最后的結(jié)果:

INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('0002CA83-AF2F-4D8F-A345-33CA1CC7CF3C','任務(wù)調(diào)度系統(tǒng)',18,'2013-01-02 21:42:30.013','',NULL,'2013-01-02 21:42:30.013')
INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('0004A6F3-EC28-4D1F-BA40-0FC4B2218C92','任務(wù)調(diào)度系統(tǒng)',18,'2013-07-09 19:36:00.060','',NULL,'2013-07-09 19:36:00.060')
INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('00094D35-7B51-4EA3-871E-CE17E293B157','任務(wù)調(diào)度系統(tǒng)',18,'2013-05-16 15:21:20.070','',NULL,'2013-05-16 15:21:20.070')
INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('000BFBB0-B37D-4D6E-9FA2-3069D4F18F84','任務(wù)調(diào)度系統(tǒng)',18,'2013-04-11 11:41:50.030','',NULL,'2013-04-11 11:41:50.030')
INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('000C2CBC-E358-4469-BC2C-04F4DDCD72CD','任務(wù)調(diào)度系統(tǒng)',18,'2013-05-06 16:07:00.037','',NULL,'2013-05-06 16:07:00.037')
INSERT INTO [SysSample] ([Id],[Name],[Age],[Bir],[Photo],[Note],[CreateTime]) values ('000CB795-40EC-4783-B7A4-8D298DF63B70','任務(wù)調(diào)度系統(tǒng)',18,'2013-01-23 20:52:30.030','',NULL,'2013-01-23 20:52:30.030')

SQL Server 存儲過程生成insert語句


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 黄色天堂在线 | 超清波多野结衣精品一区 | 国产亚洲精品中文带字幕21页 | 欧美成人高清免费大片观看 | 老子午夜伦影理论片 | 亚洲天天做日日做天天看2018 | 久久久久国产精品免费网站 | 精品国产成人三级在线观看 | 国产高清一区 | 亚洲国产欧美日韩一区二区三区 | 起碰成人免费公开网视频 | 一级毛片视频免费观看 | 国产99区 | 一级毛片大全 | 亚洲精品中文字幕区 | 午夜伊人 | 精品国产福利在线 | 囗交免费毛片 | 久热官网 | 国产欧美一区二区精品久久久 | 欧美成人鲁丝片在线观看 | 好吊妞视频在线 | 男女很黄很色床视频网站免 | 久久久久国产一级毛片高清板 | 久久国产中文字幕 | 我就色色综合网 | 欧美日韩在线观看区一二 | 91久久免费视频 | 玖玖国产精品视频 | 韩国欧美一级毛片免费 | 国产精品香蕉成人网在线观看 | 国产毛片a| 日本xxx高清免费视频 | 最新欧美精品一区二区三区不卡 | 国产在线一区视频 | 在线观看国产福利 | 四虎亚洲精品 | 欧美性猛交xxxxx按摩欧美 | 台湾一级毛片免费播放 | 护士一级毛片 | 天天天天躁天天天天碰 |