呵呵,不知道有没有什么bug
create procedure bcp2
@tablename varchar(40),
@where_statement varchar(255)
as
begin
declare @sqltext varchar(6000)
declare @cname varchar(40)
declare @typ int
--select @tablename = 'tStore'
---构造insert 语句
--Adaptive Server has expanded all '*' elements in the following statement
select sc.id, sc.number, sc.colid, sc.status, sc.type, sc.length, sc.offset, sc.usertype, sc.cdefault, sc.domain, sc.name, sc.printfmt, sc.prec, sc.scale, sc.remote_type, sc.remote_name, sc.xstatus, sc.xtype, sc.xdbid, sc.accessrule, sc.status2 into #t
from syscolumns sc, sysobjects so
where sc.id = so.id
and so.name = @tablename
select @sqltext = 'insert into ' + @tablename + '('
while exists(select 1 from #t)
begin
set rowcount 1
select @cname = name from #t
select @sqltext = @sqltext + @cname + ','
delete #t
set rowcount 0
end
select @sqltext = substring(@sqltext, 1, char_length(@sqltext) - 1) + ')'
drop table #t
---构造insert 语句 end
---构造values 语句
--Adaptive Server has expanded all '*' elements in the following statement
select sc.id, sc.number, sc.colid, sc.status, sc.type, sc.length, sc.offset, sc.usertype, sc.cdefault, sc.domain, sc.name, sc.printfmt, sc.prec, sc.scale, sc.remote_type, sc.remote_name, sc.xstatus, sc.xtype, sc.xdbid, sc.accessrule, sc.status2 into #t1
from syscolumns sc, sysobjects so
where sc.id = so.id
and so.name = @tablename
--select * from #t1
select @sqltext = @sqltext + 'values('
while exists(select 1 from #t1)
begin
set rowcount 1
select @cname = name, @typ = type from #t1
if CHARINDEX('n', @cname) = 1
select @sqltext = @sqltext + ''' + convert(varchar, ' + @cname + ') + '','
else if @typ =38
select @sqltext = @sqltext + ''' + convert(varchar, ' + @cname + ') + '','
else if @typ =50
select @sqltext = @sqltext + ''' + convert(varchar, ' + @cname + ') + '','
else if @typ =56
select @sqltext = @sqltext + ''' + convert(varchar, ' + @cname + ') + '','
else if @typ =52
select @sqltext = @sqltext + ''' + convert(varchar, ' + @cname + ') + '','
else if @typ =35
select @sqltext = @sqltext + ''''''' + convert(varchar, ' + @cname + ') + '''''','
else if CHARINDEX('d', @cname) = 1
select @sqltext = @sqltext + ''''''' + convert(varchar, ' + @cname + ') + '''''','
else select @sqltext = @sqltext + ''''''' + ' + @cname + ' + '''''','
delete #t1
set rowcount 0
end
select @sqltext = substring(@sqltext, 1, char_length(@sqltext) - 1)
select @sqltext = 'select ''' + @sqltext + ')'' from ' + @tablename + ' ' + @where_statement
--select @sqltext = 'insert into t3 select sqltext=''' + @sqltext + ')'' from ' + @tablename
print @sqltext
--select char_length(@sqltext)
--exec( 'create table t3(sc1 text)')
exec( @sqltext)
--exec( 'select * from t3 go drop table t3')
drop table #t1
---构造values 语句 end
--select convert(varchar(5000), 'insert into tStore(sStoreNO, sStoreDesc) values (''' + sStoreNO+ ''', ''' + sStoreDesc + ''')') from tStore
--drop table t1
--create table t1(sc1 varchar(20), nc2 int, dc3 datetime)
end
分享到:
相关推荐
这可能是一个用户友好的图形界面工具,简化了数据库管理员或开发者导出数据的操作。 标签中的"sql2000"意味着这个工具可能兼容Microsoft SQL Server 2000版本,这是微软早期的数据库管理系统,尽管现在可能已经被...
- **步骤3:导出数据任务** - 使用“任务”菜单启动“导出数据”向导。 - **步骤4:指定源** - 设置数据源为当前选择的MSSQL数据库。 - **步骤5:定义目标** - 选择导出数据的目标,可以是文件、另一个数据库等,...
赠送jar包:mssql-jdbc-6.1.0.jre8.jar; 赠送原API文档:mssql-jdbc-6.1.0.jre8-javadoc.jar; 赠送源代码:mssql-jdbc-6.1.0.jre8-sources.jar; 赠送Maven依赖信息文件:mssql-jdbc-6.1.0.jre8.pom; 包含翻译后...
MSSQL(Microsoft SQL Server)作为一款广泛使用的数据库管理系统,提供了强大的数据导入导出功能,这对于数据迁移、备份、恢复以及数据同步等操作至关重要。下面将详细介绍如何在MSSQL中进行数据的导入和导出。 ...
**MSSQL 通过DTS导入导出数据详解** 在SQL Server中,Data Transformation Services(DTS)是一种强大的工具,用于在不同的数据源之间移动和转换数据。它为数据库管理员和开发人员提供了一种灵活的方式来处理数据...
数据导出:从MSSQL到DB2的知识点解析 一、异构数据库导入导出的概念及重要性 异构数据库导入导出是指在不同类型的数据库管理系统之间迁移数据的过程。这种迁移可能涉及到不同的数据结构、数据类型以及存储机制。在...
很强大很实用,适合于大家用去把数据备份为脚本存储的时候使用
赠送jar包:mssql-jdbc-8.2.0.jre8.jar; 赠送原API文档:mssql-jdbc-8.2.0.jre8-javadoc.jar; 赠送源代码:mssql-jdbc-8.2.0.jre8-sources.jar; 赠送Maven依赖信息文件:mssql-jdbc-8.2.0.jre8.pom; 包含翻译后...
赠送jar包:mssql-jdbc-8.2.0.jre8.jar; 赠送原API文档:mssql-jdbc-8.2.0.jre8-javadoc.jar; 赠送源代码:mssql-jdbc-8.2.0.jre8-sources.jar; 赠送Maven依赖信息文件:mssql-jdbc-8.2.0.jre8.pom; 包含翻译后...
MSSQL数据的远程导入导出图文教程.zipMSSQL数据的远程导入导出图文教程.zipMSSQL数据的远程导入导出图文教程.zipMSSQL数据的远程导入导出图文教程.zipMSSQL数据的远程导入导出图文教程.zipMSSQL数据的远程导入导出...
3. 依赖关系:导出脚本时,需要确保对象的创建顺序正确,避免因依赖关系未解决导致的错误。 4. 数据量:对于大型数据库,可能需要分批导出和导入数据,以避免一次性操作导致的性能问题。 5. 备份策略:在进行脚本...
赠送jar包:mssql-jdbc-6.2.1.jre7.jar; 赠送原API文档:mssql-jdbc-6.2.1.jre7-javadoc.jar; 赠送源代码:mssql-jdbc-6.2.1.jre7-sources.jar; 赠送Maven依赖信息文件:mssql-jdbc-6.2.1.jre7.pom; 包含翻译后...
本文将深入探讨“MSsql数据表生成sql脚本”这一主题,以及如何利用“顺风数据库工具”来实现这个过程。 首先,让我们理解SQL脚本的基本概念。SQL脚本是一系列预先编写好的SQL命令,可以一次性执行多个操作,如创建...
7. **导出与导入**:生成的数据可以导出为CSV或其他格式,便于在不同系统间交换数据;同时,也可以从已有的数据文件导入,进一步丰富数据库内容。 8. **脚本支持**:支持自定义SQL脚本,允许在数据生成后执行特定的...
标题中的“mssql生成导出数据库字典”指的是在Microsoft SQL Server (MSSQL)环境中,使用特定工具或脚本来创建数据库字典的过程。数据库字典是一个详细记录了数据库结构、表、字段、索引、关系和其他元数据的文档。...
- 打开SQL Server Management Studio (SSMS),右键点击数据库,选择“任务”>“导入数据”或“导出数据”。 - 在向导中,选择数据源为“Microsoft Excel”,指定Excel文件路径。 - 指定目标为你的MSSQL数据库,...
1. **选择数据库和表**:用户可以选择需要导出数据的特定数据库和表,避免导出不必要的信息。 2. **格式化SQL语句**:导出的SQL语句应该易于阅读和理解,通常包括适当的缩进和换行。 3. **处理特殊字符和数据类型*...
这里,`data_file.txt`是包含要导入数据的文本文件,`table_name`是你在MySQL中对应的表名。`FIELDS TERMINATED BY ','`定义字段间的分隔符,`ENCLOSED BY '"'`表示字段值用双引号括起,`LINES TERMINATED BY '\n'`...
可以将各种数据库中的数据用一条sql语句体现出来,开发时使用方便实用