/******* 导出到excel
EXEC master..xp_cmdshell ’bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""’
/*********** 导入Excel
SELECT *
FROM OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’,
’Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0’)...xactions
SELECT cast(cast(科目编号 as numeric(10,2)) as nvarchar(255))+’ ’ 转换后的别名
FROM OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’,
’Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0’)...xactions
/** 导入文本文件
EXEC master..xp_cmdshell ’bcp "dbname..tablename" in c:\DT.txt -c -Sservername -Usa -Ppassword’
/** 导出文本文件
EXEC master..xp_cmdshell ’bcp "dbname..tablename" out c:\DT.txt -c -Sservername -Usa -Ppassword’
或
EXEC master..xp_cmdshell ’bcp "Select * from dbname..tablename" queryout c:\DT.txt -c -Sservername -Usa -Ppassword’
导出到TXT文本,用逗号分开
exec master..xp_cmdshell ’bcp "库名..表名" out "d:\tt.txt" -c -t ,-U sa -P password’
BULK INSERT 库名..表名
FROM ’c:\test.txt’
WITH (
FIELDTERMINATOR = ’;’,
ROWTERMINATOR = ’\n’
)
--/* dBase IV文件
select * from
OPENROWSET(’MICROSOFT.JET.OLEDB.4.0’
,’dBase IV;HDR=NO;IMEX=2;DATABASE=C:\’,’select * from [客户资料4.dbf]’)
--*/
--/* dBase III文件
select * from
OPENROWSET(’MICROSOFT.JET.OLEDB.4.0’
,’dBase III;HDR=NO;IMEX=2;DATABASE=C:\’,’select * from [客户资料3.dbf]’)
--*/
--/* FoxPro 数据库
select * from openrowset(’MSDASQL’,
’Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\’,
’select * from [aa.DBF]’)
--*/
/**************导入DBF文件****************/
select * from openrowset(’MSDASQL’,
’Driver=Microsoft Visual FoxPro Driver;
SourceDB=e:\VFP98\data;
SourceType=DBF’,
’select * from customer where country != "USA" order by country’)
go
/***************** 导出到DBF ***************/
如果要导出数据到已经生成结构(即现存的)FOXPRO表中,可以直接用下面的SQL语句
insert into openrowset(’MSDASQL’,
’Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\’,
’select * from [aa.DBF]’)
select * from 表
说明:
SourceDB=c:\ 指定foxpro表所在的文件夹
aa.DBF 指定foxpro表的文件名.
/*************导出到Access********************/
insert into openrowset(’Microsoft.Jet.OLEDB.4.0’,
’x:\A.mdb’;’admin’;’’,A表) select * from 数据库名..B表
/*************导入Access********************/
insert into B表 selet * from openrowset(’Microsoft.Jet.OLEDB.4.0’,
’x:\A.mdb’;’admin’;’’,A表)
********************* 导入 xml 文件
DECLARE @idoc int
DECLARE @doc varchar(1000)
--sample XML document
SET @doc =’
<root>
<Customer cid= "C1" name="Janine" city="Issaquah">
<Order oid="O1" date="1/20/1996" amount="3.5" />
<Order oid="O2" date="4/30/1997" amount="13.4">Customer was very satisfied
</Order>
</Customer>
<Customer cid="C2" name="Ursula" city="Oelde" >
<Order oid="O3" date="7/14/1999" amount="100" note="Wrap it blue
white red">
<Urgency>Important</Urgency>
Happy Customer.
</Order>
<Order oid="O4" date="1/20/1996" amount="10000"/>
</Customer>
</root>
’
-- Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @doc
-- Execute a SELECT statement using OPENXML rowset provider.
SELECT *
FROM OPENXML (@idoc, ’/root/Customer/Order’, 1)
WITH (oid char(5),
amount float,
comment ntext ’text()’)
EXEC sp_xml_removedocument @idoc
/********************导整个数据库*********************************************/
用bcp实现的存储过程
/*
实现数据导入/导出的存储过程
根据不同的参数,可以实现导入/导出整个数据库/单个表
调用示例:
--导出调用示例
----导出单个表
exec file2table ’zj’,’’,’’,’xzkh_sa..地区资料’,’c:\zj.txt’,1
----导出整个数据库
exec file2table ’zj’,’’,’’,’xzkh_sa’,’C:\docman’,1
--导入调用示例
----导入单个表
exec file2table ’zj’,’’,’’,’xzkh_sa..地区资料’,’c:\zj.txt’,0
----导入整个数据库
exec file2table ’zj’,’’,’’,’xzkh_sa’,’C:\docman’,0
*/
if exists(select 1 from sysobjects where name=’File2Table’ and objectproperty(id,’IsProcedure’)=1)
drop procedure File2Table
go
create procedure File2Table
@servername varchar(200) --服务器名
,@username varchar(200) --用户名,如果用NT验证方式,则为空’’
,@password varchar(200) --密码
,@tbname varchar(500) --数据库.dbo.表名,如果不指定:.dbo.表名,则导出数据库的所有用户表
,@filename varchar(1000) --导入/导出路径/文件名,如果@tbname参数指明是导出整个数据库,则这个参数是文件存放路径,文件名自动用表名.txt
,@isout bit --1为导出,0为导入
as
declare @sql varchar(8000)
if @tbname like ’%.%.%’ --如果指定了表名,则直接导出单个表
begin
set @sql=’bcp ’+@tbname
+case when @isout=1 then ’ out ’ else ’ in ’ end
+’ "’+@filename+’" /w’
+’ /S ’+@servername
+case when isnull(@username,’’)=’’ then ’’ else ’ /U ’+@username end
+’ /P ’+isnull(@password,’’)
exec master..xp_cmdshell @sql
end
else
begin --导出整个数据库,定义游标,取出所有的用户表
declare @m_tbname varchar(250)
if right(@filename,1)<>’\’ set @filename=@filename+’\’
set @m_tbname=’declare #tb cursor for select name from ’+@tbname+’..sysobjects where xtype=’’U’’’
exec(@m_tbname)
open #tb
fetch next from #tb into @m_tbname
while @@fetch_status=0
begin
set @sql=’bcp ’+@tbname+’..’+@m_tbname
+case when @isout=1 then ’ out ’ else ’ in ’ end
+’ "’+@filename+@m_tbname+’.txt " /w’
+’ /S ’+@servername
+case when isnull(@username,’’)=’’ then ’’ else ’ /U ’+@username end
+’ /P ’+isnull(@password,’’)
exec master..xp_cmdshell @sql
fetch next from #tb into @m_tbname
end
close #tb
deallocate #tb
end
go
/**********************Excel导到Txt****************************************/
想用
select * into opendatasource(...) from opendatasource(...)
实现将一个Excel文件内容导入到一个文本文件
假设Excel中有两列,第一列为姓名,第二列为很行帐号(16位)
且银行帐号导出到文本文件后分两部分,前8位和后8位分开。
如果要用你上面的语句插入的话,文本文件必须存在,而且有一行:姓名,银行账号1,银行账号2
然后就可以用下面的语句进行插入
注意文件名和目录根据你的实际情况进行修改.
insert into
opendatasource(’MICROSOFT.JET.OLEDB.4.0’
,’Text;HDR=Yes;DATABASE=C:\’
)...[aa#txt]
--,aa#txt)
--*/
select 姓名,银行账号1=left(银行账号,8),银行账号2=right(银行账号,8)
from
opendatasource(’MICROSOFT.JET.OLEDB.4.0’
,’Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\a.xls’
--,Sheet1$)
)...[Sheet1$]
如果你想直接插入并生成文本文件,就要用bcp
declare @sql varchar(8000),@tbname varchar(50)
--首先将excel表内容导入到一个全局临时表
select @tbname=’[##temp’+cast(newid() as varchar(40))+’]’
,@sql=’select 姓名,银行账号1=left(银行账号,8),银行账号2=right(银行账号,8)
into ’+@tbname+’ from
opendatasource(’’MICROSOFT.JET.OLEDB.4.0’’
,’’Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\a.xls’’
)...[Sheet1$]’
exec(@sql)
--然后用bcp从全局临时表导出到文本文件
set @sql=’bcp "’+@tbname+’" out "c:\aa.txt" /S"(local)" /P"" /c’
exec master..xp_cmdshell @sql
--删除临时表
exec(’drop table ’+@tbname)
用bcp将文件导入导出到数据库的存储过程:
/*--bcp-二进制文件的导入导出
支持image,text,ntext字段的导入/导出
image适合于二进制文件;text,ntext适合于文本数据文件
注意:导入时,将覆盖满足条件的所有行
导出时,将把所有满足条件的行也出到指定文件中
此存储过程仅用bcp实现
邹建 2003.08-----------------*/
/*--调用示例
--数据导出
exec p_binaryIO ’zj’,’’,’’,’acc_演示数据..tb’,’img’,’c:\zj1.dat’
--数据导出
exec p_binaryIO ’zj’,’’,’’,’acc_演示数据..tb’,’img’,’c:\zj1.dat’,’’,0
--*/
if exists (select * from dbo.sysobjects where id = object_id(N’[dbo].[p_binaryIO]’) and OBJECTPROPERTY(id, N’IsProcedure’) = 1)
drop procedure [dbo].[p_binaryIO]
GO
Create proc p_binaryIO
@servename varchar (30),--服务器名称
@username varchar (30), --用户名
@password varchar (30), --密码
@tbname varchar (500), --数据库..表名
@fdname varchar (30), --字段名
@fname varchar (1000), --目录+文件名,处理过程中要使用/覆盖:@filename+.bak
@tj varchar (1000)=’’, --处理条件.对于数据导入,如果条件中包含@fdname,请指定表名前缀
@isout bit=1 --1导出((默认),0导入
AS
declare @fname_in varchar(1000) --bcp处理应答文件名
,@fsize varchar(20) --要处理的文件的大小
,@m_tbname varchar(50) --临时表名
,@sql varchar(8000)
--则取得导入文件的大小
if @isout=1
set @fsize=’0’
else
begin
create table #tb(可选名 varchar(20),大小 int
,创建日期 varchar(10),创建时间 varchar(20)
,上次写操作日期 varchar(10),上次写操作时间 varchar(20)
,上次访问日期 varchar(10),上次访问时间 varchar(20),特性 int)
insert into #tb
exec master..xp_getfiledetails @fname
select @fsize=大小 from #tb
drop table #tb
if @fsize is null
begin
print ’文件未找到’
return
end
end
--生成数据处理应答文件
set @m_tbname=’[##temp’+cast(newid() as varchar(40))+’]’
set @sql=’select * into ’+@m_tbname+’ from(
select null as 类型
union all select 0 as 前缀
union all select ’+@fsize+’ as 长度
union all select null as 结束
union all select null as 格式
) a’
exec(@sql)
select @fname_in=@fname+’_temp’
,@sql=’bcp "’+@m_tbname+’" out "’+@fname_in
+’" /S"’+@servename
+case when isnull(@username,’’)=’’ then ’’
else ’" /U"’+@username end
+’" /P"’+isnull(@password,’’)+’" /c’
exec master..xp_cmdshell @sql
--删除临时表
set @sql=’drop table ’+@m_tbname
exec(@sql)
if @isout=1
begin
set @sql=’bcp "select top 1 ’+@fdname+’ from ’
+@tbname+case isnull(@tj,’’) when ’’ then ’’
else ’ where ’+@tj end
+’" queryout "’+@fname
+’" /S"’+@servename
+case when isnull(@username,’’)=’’ then ’’
else ’" /U"’+@username end
+’" /P"’+isnull(@password,’’)
+’" /i"’+@fname_in+’"’
exec master..xp_cmdshell @sql
end
else
begin
--为数据导入准备临时表
set @sql=’select top 0 ’+@fdname+’ into ’
+@m_tbname+’ from ’ +@tbname
exec(@sql)
--将数据导入到临时表
set @sql=’bcp "’+@m_tbname+’" in "’+@fname
+’" /S"’+@servename
+case when isnull(@username,’’)=’’ then ’’
else ’" /U"’+@username end
+’" /P"’+isnull(@password,’’)
+’" /i"’+@fname_in+’"’
exec master..xp_cmdshell @sql
--将数据导入到正式表中
set @sql=’update ’+@tbname
+’ set ’+@fdname+’=b.’+@fdname
+’ from ’+@tbname+’ a,’
+@m_tbname+’ b’
+case isnull(@tj,’’) when ’’ then ’’
else ’ where ’+@tj end
exec(@sql)
--删除数据处理临时表
set @sql=’drop table ’+@m_tbname
end
--删除数据处理应答文件
set @sql=’del ’+@fname_in
exec master..xp_cmdshell @sql
go
/** 导入文本文件
EXEC master..xp_cmdshell ’bcp "dbname..tablename" in c:\DT.txt -c -Sservername -Usa -Ppassword’
改为如下,不需引号
EXEC master..xp_cmdshell ’bcp dbname..tablename in c:\DT.txt -c -Sservername -Usa -Ppassword’
/** 导出文本文件
EXEC master..xp_cmdshell ’bcp "dbname..tablename" out c:\DT.txt -c -Sservername -Usa -Ppassword’
此句需加引号
分享到:
相关推荐
SQL Server SQL 语句导入导出大全 简介:微软 SQL Server 数据库 SQL 语句导入导出大全,包括与其他数据库和文件的数据的导入导出。下面是 SQL Server SQL 语句导入导出大全的详细知识点。 导出到 Excel 为了将...
"SQL语句导入导出大全" 本文档旨在提供一个全面的SQL语句导入导出大全,涵盖了与不同数据库和文件的数据导入导出,包括Excel、文本文件、dBase IV、dBase III、FoxPro数据库和Access等。 1. 导出到Excel 使用以下...
本教程“SQL语句导入导出大全”旨在帮助用户全面理解如何使用SQL进行数据的导入与导出操作,这对于数据迁移、备份和恢复等任务至关重要。 首先,我们需要了解SQL的基本概念。SQL主要包括数据查询、数据插入、数据...
基于Kotlin开发的播放器,默认支持MediaPlayer播放器,可扩展VLC播放器、IJK播放器、EXO播放器、阿里云播放器、以及任何使用TextureView的播放器, 开箱即用,欢迎提 issue 和 pull request
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
全套S7-1200一拖三恒压供水程序样例+PID样例+触摸屏样例 。 1、此程序采用S7-1200PLC和KTP1000PN触摸屏人机执行PID控制变频器实现恒压供水. 包括plc程序,触摸屏程序,项目图纸(重要) 2.程序为实际操作项目案例程序,程序带有注释说明。 PLC程序打开软件版本为西门子博图V13以上均可打开。 实际工程已验证
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
电子商务师之职业道德试题.doc
android kotlin实现totp动态身份验证器
openwrt 后台
1. 车辆信息管理 1.1 车辆登记 功能描述:用户可以输入新购车辆的基本信息,如品牌、型号、车牌号码、VIN(车辆识别码)、购买日期、保险信息等,进行登记。 目标:建立完整的车辆档案,便于后续管理和查询。 1.2 车辆信息查询 功能描述:支持根据各种条件(如车牌号、品牌、注册时间等)查询车辆信息,通过列表或详情页面展示相关数据。 目标:提升信息获取效率,方便用户随时查看车辆状态。 1.3 车辆状态监控 功能描述:实时监控车辆的状态信息,如是否在用、是否过期、当前里程数等,并通过报警或提醒功能通知用户。 目标:确保车辆始终处于良好状态,及时处理潜在问题。 2. 维护与保养管理 2.1 维护记录管理 功能描述:记录每辆车的维护和保养历史,包括维护日期、内容、费用以及服务机构等信息。 目标:为后续的车辆维护提供参考依据,确保车辆安全性与可靠性。 2.2 保养提醒 功能描述:根据车辆保养周期设置自动提醒,提示用户进行定期保养或检查。 目标:帮助用户避免由于忽视保养导致的车辆故障,提高车辆使用寿命。 3. 驾驶员管理 3.1 驾驶员信息录入 功能描述:录入和管理驾驶员的基本信息,包括姓名、身份
转成html版,要是文章被锁,可以下载这个,自行查看
内容概要:本文深入探讨了双馈电机(DFIG)矢量控制策略中,传统基于磁场定向控制所存在的问题及其解决方案,即采用定子电压定向矢量控制来改善系统动态性能并实现对有功功率和无功功率的有效解耦。文中详细介绍了定子电压矢量的构建方法及其数学推导,最终得到了双馈电机转子电流内环与外部控制器的设计原则。并通过一系列公式推导展示了在稳定状态下的有功功率和无功功率分别受控于转子电流的哪一部分。此外,还提出了针对电磁转矩与电压波动等问题的具体解决思路。 适用人群:电机工程师、电力电子工程师及相关科研工作者。 使用场景及目标:适用于研究和发展大型风力发电机组中使用的MW级别双馈发电机的先进控制算法,提高电力转换效率与系统稳定性。 其他说明:该文章不仅从理论上剖析了定子电压定向矢量控制的技术优势,也为实际工程应用提供了有价值的参考。同时注意,在理论学习基础上还需关注其实验验证环节,确保理论假设符合实际情况。
留学生交流互动论坛网站的主要实现功能包括:管理员:首页、个人中心、学生管理、经验分享管理、计划分享管理、软件推荐管理、网址推荐管理、标签分类管理、留言板管理、交流论坛、系统管理,学生;首页、个人中心、经验分享管理、计划分享管理、软件推荐管理、网址推荐管理、标签分类管理,前台首页;首页、经验分享、计划分享、软件推荐、网址推荐、交流论坛、学习资讯、留言反馈、个人中心、后台管理功能,基本上实现了整个留学生交流互动论坛网站的过程。 环境说明: 开发语言:java JDK版本:jdk1.8 框架:ssm 数据库:mysql 5.7/8 数据库工具:navicat 开发软件:eclipse/idea 部署容器:tomcat8
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
AirSLAM具有双模式(V-SLAM和VI-SLAM),由AirVO(IROS23)升级而来。 AirSLAM是一种高效的视觉SLAM系统,旨在应对短期和长期的照明挑战。我们的系统采用了一种混合方法,将用于特征检测和匹配的深度学习技术与传统的后端优化方法相结合。具体而言,我们提出了一种同时提取关键点和结构线的统一卷积神经网络(CNN)。然后,这些特征以耦合的方式进行关联、匹配、三角化和优化。此外,我们引入了一个轻量级的重新定位管道,该管道重用构建的映射,其中关键点、线条和结构图用于将查询帧与映射相匹配。为了增强所提出的系统对现实世界机器人的适用性,我们使用C++和NVIDIA TensorRT部署和加速特征检测和匹配网络。在各种数据集上进行的广泛实验表明,我们的系统在照明挑战环境中优于其他最先进的视觉SLAM系统。效率评估表明,我们的系统在PC上可以以73Hz的速率运行,在嵌入式平台上可以以40Hz的速度运行。
汽车在线销售系统的主要使用者分为管理员:个人中心、用户管理、车辆信息管理 、汽车信息管理 、汽车类型管理、汽车颜色管理、入库记录管理、出库记录管理、车辆购买管理、运输收费管理、订单状态管理管理、留言板管理、系统管理、管理员管理、留言管理等等。用户:个人中心、车辆购买、运输收费管理、订单状态管理、我的收藏管理等功能。首页前台功能:首页、汽车信息、新闻资讯、留言反馈、我的收藏通过这些功能模块的设计,基本上实现了整个汽车在线销售系统的过程。 环境说明: 开发语言:java JDK版本:jdk1.8 框架:ssm 数据库:mysql 5.7/8 数据库工具:navicat 开发软件:eclipse/idea 部署容器:tomcat8
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手