调用存储过程导出sql的数据!
drop proc proc_insert
if exists (select name from sysobjects where
name = 'proc_insert' and type='P')
drop procedure proc_insert
go
create proc proc_insert (@tablename varchar(256))
as
begin
set nocount on
declare @sqlstr varchar(4000)
declare @sqlstr1 varchar(4000)
declare @sqlstr2 varchar(4000)
select @sqlstr='select ''insert '+@tablename
select @sqlstr1=''
select @sqlstr2=' ('
select @sqlstr1= ' values ( ''+'
select @sqlstr1=@sqlstr1+col+'+'',''+' ,@sqlstr2=@sqlstr2+name +',' from (select case
-- when a.xtype =173 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar('+convert(varchar(4),a.length*2+2)+'),'+a.name +')'+' end'
when a.xtype =127 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(20),'+a.name +')'+' end'
when a.xtype =104 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(1),'+a.name +')'+' end'
when a.xtype =175 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'replace('+a.name+','''''''','''''''''''')' + '+'''''''''+' end'
when a.xtype =61 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'convert(varchar(23),'+a.name +',121)'+ '+'''''''''+' end'
when a.xtype =106 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar('+convert(varchar(4),a.xprec+2)+'),'+a.name +')'+' end'
when a.xtype =62 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(23),'+a.name +',2)'+' end'
when a.xtype =56 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(11),'+a.name +')'+' end'
when a.xtype =60 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(22),'+a.name +')'+' end'
when a.xtype =239 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'replace('+a.name+','''''''','''''''''''')' + '+'''''''''+' end'
when a.xtype =108 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar('+convert(varchar(4),a.xprec+2)+'),'+a.name +')'+' end'
when a.xtype =231 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'replace('+a.name+','''''''','''''''''''')' + '+'''''''''+' end'
when a.xtype =59 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(23),'+a.name +',2)'+' end'
when a.xtype =58 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'convert(varchar(23),'+a.name +',121)'+ '+'''''''''+' end'
when a.xtype =52 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(12),'+a.name +')'+' end'
when a.xtype =122 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(22),'+a.name +')'+' end'
when a.xtype =48 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar(6),'+a.name +')'+' end'
-- when a.xtype =165 then 'case when '+a.name+' is null then ''NULL'' else '+'convert(varchar('+convert(varchar(4),a.length*2+2)+'),'+a.name +')'+' end'
when a.xtype =167 then 'case when '+a.name+' is null then ''NULL'' else '+'''''''''+'+'replace('+a.name+','''''''','''''''''''')' + '+'''''''''+' end'
else '''NULL'''
end as col,a.colid,a.name
from syscolumns a where a.id = object_id(@tablename) and a.xtype <>189 and a.xtype <>34 and a.xtype <>35 and a.xtype <>36
)t order by colid
select @sqlstr=@sqlstr+left(@sqlstr2,len(@sqlstr2)-1)+') '+left(@sqlstr1,len(@sqlstr1)-3)+');'' from '+@tablename
print @sqlstr
exec( @sqlstr)
set nocount off
end
go
2.然后
调用:
exec proc_insert 't_case_type'
分享到:
相关推荐
在IT行业中,数据库管理和数据迁移是常见的任务,而“导出SQL数据为Insert语句”是一种常用的方法,便于数据备份、迁移或测试环境的搭建。本文将深入探讨这个主题,介绍如何将数据库中的数据转换为Insert语句,并...
要将SQL数据导出到Excel,我们需要完成以下几个步骤: 1. **连接SQL数据库**:首先,你需要建立一个连接到SQL数据库的通道。这通常通过ADO.NET(例如,使用SqlConnection类)实现,设置正确的连接字符串,包括...
java导出源代码,用于导出sql数据转excel的java代码
请看下面的操作图解。 1.使用Sql Server Management Studio 2008 连接数据库。 2.选中要导出数据的数据库节点,点鼠标右键,在菜单中...从SQL SERVER 2008开始,我们就可以很方便的导出数据脚本,而无需再借助存储过
vbs从sqlserver数据库导出数据成execl
标题提到的“将sqlserver中的数据导出成为sql语句”是指将SQL Server数据库中的表结构和数据转换为一系列的INSERT INTO SQL语句,这样就可以通过执行这些语句在另一个数据库中重建相同的数据。这一过程对于开发、...
在SQL Server数据库管理中,有时候我们需要将数据库表中的数据导出为SQL语句,以便于备份、迁移或者在其他环境中重建相同的数据结构和内容。针对这个需求,存在一种名为“SQLServer数据库表中数据导出成SQL语句工具...
标题中的"VC 导出数据库和导出SQL语句程序.rar"表明这是一个使用Visual C++(简称VC)编写的程序,其主要功能是导出数据库中的数据以及将这些数据转换为SQL语句。这个程序可能是为了帮助开发者或者数据库管理员方便...
SQL Server 导出带数据的脚本 SQL Server 是一个功能强大的关系数据库管理系统,它提供了多种方式来导出数据库结构和数据。今天,我们将探讨如何使用 SQL Server Management Studio (SSMS) 导出带数据的脚本。 一...
关于SqlServer通过脚本访问Excel数据,以及通过企业管理器导入Excel数据问题解决办法。
SQL数据字典导出工具是一款专门用于数据库管理和信息提取的实用程序。在IT行业中,数据字典是数据库管理系统中的一个重要组成部分,它记录了数据库中所有对象的详细信息,包括但不限于表、视图、字段、索引、约束...
该工具的主要功能是帮助用户快速、高效地导出SQL Server数据库的数据字典信息。这通常包括以下几个方面: 1. 表信息:导出所有表的详细结构,如字段名、数据类型、长度、是否为主键、是否有默认值等。 2. 视图信息...
SMImport 组件包能够导入如下文件格式的数据 1. MS Excel spreadsheet (directly without OLE/DDE) 2. text delimited file 3. text fixed width file 4. XML file 5. HTML file 6. MS Access database 7. MS Word ...
首先,`magento导出数据sql`是指使用SQL语句来提取Magento数据库中的数据。这通常涉及到备份、分析或迁移数据到其他系统。在Magento中,数据主要存储在MySQL数据库中,因此我们可以通过以下几种方式来导出数据: 1....
SQL SERVER数据导出工具SQL SERVER数据导出工具SQL SERVER数据导出工具SQL SERVER数据导出工具SQL SERVER数据导出工具SQL SERVER数据导出工具SQL SERVER数据导出工具
本文将深入探讨如何使用特定的“数据字典导出工具”来导出SQL Server数据库的数据字典,并分析这个过程的细节。 首先,我们要明确“数据字典导出工具”的功能。正如标题所述,这是一个专门设计用于导出SQL Server...
### 导出SQL Server部分表(特定表)数据说明 #### 概述 在日常的数据库管理工作中,经常需要对数据库中的部分表进行导出操作,以满足迁移、备份或数据分析等需求。本文将详细介绍如何通过SQL Server Management ...
标题中的“导出sqlserver表数据小工具”指的是一个专门用于从Microsoft SQL Server数据库中导出表数据的轻量级应用程序。这样的工具通常是为了帮助数据库管理员或开发人员快速备份、迁移或复制数据库中的特定表数据...
本文将详细探讨如何从SQL Server数据库导出SQL语句。 首先,我们需要了解SQL Server提供的两种主要方法来实现这个目标:SQL Server Management Studio (SSMS) 和 T-SQL 命令。 1. **使用SQL Server Management ...