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

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條評論
主站蜘蛛池模板: 国产成人精品高清在线观看99 | 奇米狠狠操 | 久久草在线观看视频 | 国产精品乱码一区二区三区 | 久青草免费视频手机在线观看 | 欧美巨大video粗暴 | 免费观看黄色的网站 | 久久精品国产一区二区小说 | 真人一级一级特黄高清毛片 | 奇米四色视频 | 精品国产一区二区二三区在线观看 | 欧美日韩一区二区三区自拍 | 四虎国产免费 | 国产伦精品一区二区三区网站 | 亚洲色图插插插 | 午夜宅男免费完整在线观看 | 四虎永久免费紧急入口 | 亚洲国产一区二区a毛片日本 | 修修视频在线观看 | 精品免费看 | 毛片色| 亚洲国产美女精品久久久久 | 国产中文字幕在线 | 国产成人免费不卡在线观看 | 夜夜操天天爽 | 国内精品自在自线在免费 | 亚洲国产成人综合 | 久草香蕉视频在线观看 | 不卡福利视频 | a久久| 久久机热这里只有精品无需 | 四虎看黄| 99久久99久久精品免费看子 | 久久这里只精品国产99热 | 中国女人内谢69xxxxx高清 | 久久狠狠婷婷丁香香蕉 | 日本三级带日本三级带黄首页 | 国产a级一级久久毛片 | 五月婷婷综合激情 | 成人xxxx| 久久久久久午夜精品 |