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

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

用SQL查询分析器操纵Excel及导入导出数据
http://www.delphibbs.com/keylife/iblog_show.asp?xid=32983
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,


相关文档:

PHP连接SQL Server

使用过SQL Server的人应该都清楚,SQL Server常用的有两种认证方式,一种是本地系统账户认证(Windows Authentication ),一种是使用用户名和密码(SQL Server Authentication ),第二种认证方式必须启用SQL Server的混合模式。
  1.Windows Authentication连接部分代码段:
<?php
$serverName = "(local)";
$co ......

SQLite不支持的SQL语法总结


1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
其中limit 0,10表示从第0条记录开始,往后 ......

清除SQL Server Management Studio最近服务器列表

摘自:伊仪秋水
SQL Server Management Studio (SSMS) 的“连接到服务器”对话框会记录用户所有访问过的服务器名称,这个功能对于经常连接多个数据库的人来说确实挺方便的。
不过使用了一段时间之后,这个列表会变得很长。里面还有很多服务器名称都已经失效了,很想把这个列表清空了。但是很郁闷在SSMS的界面找 ......

Oracle SQL优化2

Oracle SQL 的优化规
一:尽量少用IN操作符,基本上所有的IN操作符都可以用EXISTS代替 ,用IN写出来的SQL,的优点是比较容易写及清晰易懂,但是用IN的SQL
性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别:
      ORACLE试图将其转换成多个表的连接,如果转换 ......

sql 分割字符串

ALTER function dbo.UDF_SplitSubString 

 @Expression varchar(8000) 
,@Delimiter varchar(100) 
,@ int 

returns varchar(8000) 
as 
begin 
--declare @Expression varchar(8000) 
--set @Expre ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号