易截截图软件、单文件、免安装、纯绿色、仅160KB

用SQL查询分析器操纵Excel及导入导出数据

SQL SERVER 和EXCEL的数据导入导出
通常的方法是使用图形界面的dts工具,但发觉有些使用命令行界面的方式更简单
1、在SQL SERVER里查询Excel数据:
-- ======================================================
SELECT *
from OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
-------------------------------------------------------------------------------------
2、将Excel的数据导入SQL server :
-- ======================================================
SELECT * into newtable
from OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
-------------------------------------------------------------------------------------
结论: 这两个功能都使用了openDatasource函数来返回一个专用的数据库服务器,作为4部分名称的第一部分。
OPENDATASOURCE ( provider_name, init_string )
provider_name: 如Sqloledb, Microsoft.Jet.OLEDB.4.0等
init_string: 连接字符串,如'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0'
提供了服务器名,对Excel来说就是文件名
用户ID,密码
Extended properties: 我试了填Excel 5.0 或8.0都可以,其他不行
最后的[Sheet1$]是页名,这里当做表名用,注意一定要加上$
另外一个例子,用来取其他sql server服务器上的数据:
SELECT *
from OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=MyUID;Password=MyPass'
).Northwind.dbo.Categories
哈哈,眼熟多了吧,一样的!
但是这个用法只用于ad hoc, 对于大量的操作还是用linked server比较正规, linked server这么加:
EXEC sp_addlinkedserver 'Excel',
'Jet 4.0',
'Microsoft.Jet.OLEDB.4.0',
'D:\book1.xls',
NULL,
'Excel 5.0'
GO
加好后,这么查询(还是需要$):
select * from excel...Events$
3、将SQL SERVER中查询到的数据导成一个Excel文件
-- ======================================================
T-SQL代码:
EXEC master..xp_cmdshell 'bcp


相关文档:

经典SQL语句大全

转自:http://www.sqlkey.cn/sql-yuju/sql_yuju.html
 
一、基础
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.d ......

PowerDesigner与SQL Server相连

PowerDesigner与SQL Server相连
以前听说过PowerDesigner可以和数据库连接,根据在PowerDesigner创建的数据模型创建表、触发器、存储过程到数据库中。也可以将已有的数据库导出到PowerDesigner中为数据模型。今天做了一下测试,发现确实很简单,现在操作步骤与大家分享:
0、准备工作
先在SQL Server中创建一数据库, ......

SQL 中如何返回存储过程中的结果集

set @sql = 'select    *   from   OPENROWSET(''SQLOLEDB'',''SERVER='+@serverip+';uid=sa;pwd=sa;Database='+@databaseName+''',''SET   FMTONLY   OFF;set   nocount   on exec   procName '''''+@yqid+''''''' ) as   ......

SQl 2005 For XMl 简单查询(Raw,Auto,Path模式)(1)

 很多人对Xpath可能比较熟悉,但不知道有没有直接操作过数据库,我们都知道 在Sql2005里公支持的几种查询有Raw,Auto,Path模式等,如果在2000里使用过 Path模式的朋友应该知道,是不容易处理查询结果的,那么在2005里对这一块做了很好的提升
        我先来介绍一下什么是Sql F ......

SQL服务器:CONVERT与CAST区别何在


如果SQL Server程序员想将表达式从一种换为另一种,他可以从SQL Server 7和2000中自带的两种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从datetime型转化成varchar型;CONVERT和CAST就可以用于这种情况。
  由于SQL Server提供两种功能,因此应该选择哪种功能或应该在哪种情况下使用该功能就很容易让 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号