zoukankan      html  css  js  c++  java
  • 导出表数据的存储过程

    创建一个导出表数据的存储过程

    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 '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
  • 相关阅读:
    java.lang.NoClassDefFoundError: TagSupport 错误
    ${pageContext.request.contextPath}的作用
    JS获取table表格任意单元格值
    数据库导出为Excel
    requestScope含义
    每种创伤,都是另一种成熟
    关于AJAX
    the public type xxx must be defined in its own file
    MyEclipse取消Show in Breadcrumb的方法
    Sql2005里获取表的结构SQL
  • 原文地址:https://www.cnblogs.com/liwenyan/p/2541758.html
Copyright © 2011-2022 走看看