SQL Server [分布式查询/事务]
分布式查询
OPENROWSET
从Excel取数据
SELECT * from OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=d:\1.xls',[Sheet1$])
从Oracle取数据
SELECT * from OPENROWSET('MSDAORA.1','NetServiceName';'User';'Password','SELECT * from OracleTalbe')
Linked Server(for Oracle)
建立Linked Server
sp_addlinkedserver'Allies', 'Oracle', 'MSDAORA.1', 'NetServiceName'
Oracle的Login
sp_addlinkedsrvlogin'Allies', FALSE, 'SQLServerLogin', 'OracleUser', 'OraclePassword'
从Oracle查询数据
SELECT*from OPENQUERY( Allies, 'SELECT * from OracleTalbe'),或者
SELECT*from Allies..OracleUser.OracleTalbe
修改Linked Server的Server Option
sp_serveroption'Allies', 'Option Name', 'Option Value'
例如
sp_serveroption'OraDC', 'rpc out', 'true'
sp_serveroption'OraDC', 'rpc', 'true'
向Oracle插入数据(还没有用过)
INSERT INTO OPENQUERY(Allies, 'SELECT ... from OracleTalbe WHERE 1=2') VALUES ( ... )
删除Linked Server
sp_dropserver'Allies', 'droplogins'
注意:使用OPENROWSET、OPENQUERY时,SQL Server不对提交的SQL语句做任何检查,直接将语句提交给Linked Server进行处理;使用四部分命名法时,SQL Server可能从Linked Server上读取被引用表的数据到SQL Server,然后在SQL Server上来完成其它操作。
设置SQL Server到Oracle的Linked Server,可参考以下KB文章:
How to set up and troubleshoot a linked server to Oracle in SQL Server
Limitations of Microsoft Oracle ODBC Driver and OLEDB Provider
Techniques to Debug Connectivity Issues to an Oracle Server Using the ODBC Driver
相关文档:
declare @XML XML
SET @XML='<root>
<OLDVALUE>
<H_Action id="1130">030</H_Action>
<D_Action>030</D_Action>
<OrderCompany>00220</OrderCompany>
<OrderNumber>10004035</OrderNumber> ......
localhost...不能打开到主机的连接,在端口 1433: 连接失败
启动tcp/ip连接的方法:
打开
\Microsoft SQL Server 2005\配置工具\目录下的SQL Server Configuration
Manager,选择mssqlserver协议,
然后右边窗口有个tcp/ip协议,设置ip/all默认端口为1433,然后启动它,重启sqlserver服务。
问题解决
这时在命令行输 ......
SQL循环语句
declare @i int
set @i=1
while @i<30
begin
insert into test (userid) values(@i)
set @i=@i+1
end
---------------
while 条件
begin
执行操作
set @i=@i+1
end
WHILE
设置重复执行 SQL 语句或语句块的条件。只要指定的条件为真,就重复执行语句。可以使用 BREAK 和 CONTI ......
/*------------------------------------------------------------------
-- Author : htl258(Tony)
-- Date : 2010-04-16 14:30:23
-- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
Jul 9 2008 14:43:34
&nb ......
随着Visual Studio 2010的发布,Microsoft SQL Server Compact 3.5也升级为Microsoft
SQL Server Compact SP2。
下载地址如下:
SQL
Server Compact 3.5 SP2 for Windows mobile devices (all platforms &
processors)
SQL
Server Compact 3.5 SP2 for Windows desktop (32-bit and 64-bit)
  ......