`

sql 存储过程导出表的数据

    博客分类:
  • SQL
阅读更多
IF OBJECT_ID('spGenInsertSQL','P') IS NOT NULL
DROP PROC spGenInsertSQL
GO
CREATE   proc 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
GO

exec spGenInsertSQL  t_ERMS_user
exec 存储过程名 参数1,参数2
分享到:
评论

相关推荐

    SQL Server导出表到EXCEL文件的存储过程

    - **标题解读**:此标题表明文章将介绍一种在SQL Server环境中使用的存储过程,该存储过程的主要功能是将SQL Server中的数据表导出为Excel文件格式。 #### 描述分析: - **描述内容**:“SQL Server导出表到EXCEL...

    Sql Server 存储过程的导出导入.doc

    本文主要介绍如何在SQL Server中导出和导入存储过程。 首先,导出存储过程的步骤如下: 1. 打开SQL Server Management Studio(简称SSMS),这是一个用于管理SQL Server数据库的强大工具。 2. 在对象资源管理器中...

    存储过程导出表数据为添加语句

    在给定的`存储过程导出表数据为添加语句.sql`文件中,应该包含了创建这样一个存储过程的具体SQL代码。执行这个存储过程时,只需要提供待导出的表名作为参数,如`EXEC 存储过程名称 '表名称';`。存储过程内部会处理...

    sql server存储过程导出数据到Access文件

    sql server存储过程导出数据到Access文件 原版来源于邹建版本,稍有修改 sql server存储过程导出数据到Access文件

    SQLServer导出带数据的脚本

    在 SSMS 中,选择要导出的数据库对象,例如表、视图、存储过程等。可以在对象资源管理器中选择要导出的对象,也可以使用查询编辑器来编写自定义的查询语句。 ### 2. 设置脚本编写选项 在选择对象后,需要设置脚本...

    SQL导出EXCEL(带表头)的存储过程

    本文将详细解析一种实现这一功能的方法——通过SQL Server的存储过程来导出数据至Excel,并包含表头信息,确保数据的可读性和易用性。 #### 核心概念与技术背景 1. **存储过程**:存储过程是SQL Server中的一组预...

    SQLServer数据库表中数据导出成SQL语句工具

    总之,“SQLServer数据库表中数据导出成SQL语句工具”是一种方便的解决方案,它简化了数据库表数据的导出过程,便于在不同环境间进行数据迁移和备份。了解并熟练掌握这类工具的使用,对于SQL Server管理员和开发人员...

    导出sqlserver部分表(特定表)数据说明

    如果只选择“架构”,则只会导出表结构而不会导出数据;选择“数据”时,只会导出数据而不包括表结构定义;选择“架构和数据”时,则同时导出表结构和数据。 - **脚本过滤选项**: - 可以进一步细化导出的范围,...

    SQL SERVER:把表里的数据导出成为INSERT INTO脚本的存储过程

    此存储过程将适用于多种数据类型,并能够动态生成插入语句,以便用户可以方便地导出数据作为脚本来进行备份或迁移等操作。 ### SQL Server 存储过程设计 #### 1. 存储过程概述 该存储过程的主要功能是接受一个表名...

    导出sqlserver 2000的表结构

    除了SQL查询,还可以使用SQL Server提供的扩展存储过程`xp_cmdshell`结合BCP命令来导出数据和表结构。BCP(Bulk Copy Program)是SQL Server的一个工具,用于快速导入导出大量数据。 #### 2. BCP命令解析 - **`...

    SQL导出表数据

    导出sql server表数据(生成以insert插入的语句方式的存储过程)

    SQLServer表数据转化为sql语句(表数据搬运,一键快捷导出为insert语句,方便导入到其它库)

    功能: 根据表名、where条件,生成导出数据的SQL语句。(包含insert语句。结果可一键执行,利于数据导出、导入) 参数: @tableName nvarchar(100) --表名 ,@sqlWhere nvarchar(500) --where条件,如'a=''123'' '(传...

    导出sql server表数据(以insert语句方式的存储过程)

    导出sql server表数据(生成以insert插入的语句方式的存储过程)

    SQL数据字典导出工具

    此外,数据字典还可能包含关于存储过程、触发器、权限和安全性设置等复杂对象的信息。 SQL数据字典导出工具的核心功能之一是表结构的导出。这使得数据库管理员或开发人员能够快速获取表格的详细定义,包括其字段、...

    SQL Server导出数据字典工具

    SQL Server是一款广泛应用...总的来说,"SQL Server导出数据字典工具"是数据库管理员和开发人员的得力助手,它简化了获取和管理SQL Server数据库元数据的过程,提高了工作效率,同时也为数据库的维护和优化提供了便利。

    SQL定时导出数据到Excel

    为了实现定时导出数据的需求,我们可以编写一个存储过程,该过程负责执行具体的导出逻辑。然后,结合Windows计划任务或SQL Server Agent作业,设置定期执行此存储过程的时间间隔。 **示例代码**: ```sql IF EXISTS...

    sql2000 利用存储过程导出excel

    下面我们将深入探讨如何在SQL Server 2000中利用存储过程导出数据到Excel: 1. **使用OPENROWSET(BULK)**:SQL Server 2000中的OPENROWSET函数可以用来直接读取或写入文件,包括Excel文件。通过指定BULK选项,我们...

    sqlserver 导出表及字段说明脚本.rar

    2. **导出表结构**:在SQL Server中,可以使用`sp_help`系统存储过程或`information_schema`视图来获取表的结构信息,包括表名、字段名、数据类型、是否为主键等。`sp_help 'tableName'`将显示关于特定表的所有信息...

    SQL使用存储过程导入和导出Excel

    #### 知识点三:使用存储过程导出数据到Excel文件 1. **存储过程定义**: 为了实现更为复杂的导出功能,可以编写一个存储过程来完成数据的导出工作。例如,下面的存储过程`p_exporttb`可以将表中的数据导出到真正...

    sql,access导出表结构,互导

    总结,SQL和Access之间的表结构导出和互导是一个涉及多个步骤的过程,需要考虑数据类型、字符集、数据库规模等因素。理解这些知识点对于在不同数据库系统间迁移数据至关重要,有助于提高工作效率并避免潜在的问题。

Global site tag (gtag.js) - Google Analytics