sqlopendatasource
sql同步使用dblink同步数据。
具体参考实例:
1、在win下创建linux的DBLINK
a.查看linux下的tnsnames.ora文件
[oracle@myrac1 admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /s01/app/oracle/proct/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
HJJ =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = myrac1.oracle.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hjj)
)
)
b.创建dblink
SQL> create database link win_lin_link connect to hjj identified by xxxx
2 using '(DESCRIPTION =
3 (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.171)(PORT = 1521))
4 (CONNECT_DATA =
5 (SERVER = DEDICATED)
6 (SERVICE_NAME = hjj)
7 )
8 )'
9 /
Database link created.
2.在win下创建trigger
SQL> create or replace trigger trig_win_emp
2 after insert on emp
3 for each row
4 begin
5 insert into emp@win_lin_link values(:new.empno,:new.empname,:new.empsalary);
6 end;
7 /
Trigger created.
3.测试
4.结果
win下插入数据
SQL> insert into emp values('E001','LYN',2300);
1 row created.
SQL>COMMIT;
Commit complete.
SQL> select *from emp;
EMPNO EMPNAME EMPSALARY
---------------------------------------- ---------------------------------------- ----------
E001 LYN 2300
SQL> select * from emp@win_lin_link;
EMPNO EMPNAME EMPSALARY
---------------------------------------- ---------------------------------------- ----------
E001 LYN 2300
linux下查看数据
SQL> select * from emp;
EMPNO EMPNAME EMPSALARY
-------------------- -------------------- ----------
E001 LYN 2300
⑵ SQL server 导入xlsx文件 opendatasource函数
如果能用opendatasource ,那也可以用bulk insert 来进行导入。用法也是差不多的
⑶ sql sever 阻止openrowset opendatasource访问怎么处理
一、跨数据库访问 第一种方式 SELECT * FROM OPENDATASOURCE( 'SQLOLEDB', 'Data Source=远程ip;User ID=sa;Password=密码' ).库名.dbo.表名 WHERE 条件 第二种方式 在sql server组->服务->安全性->链接服务器下建立一个具有别名的链接服务器。...
⑷ Sql Server OPENDATASOURCE 问题
本机连接字符串为Data Source=.;User ID=sa;Password=123;database=Northwind;
远程访问数据库语句为,把远程的IP改成本机没问题
--------------------
楼主的是用C#连接非本机数据库,使用了OPENDATASOURCE函数?
如果是这样,要确保远程数据库的设置是否启用
OPENDATASOURCE权限,这项设置是在SQL2005时需要设置
楼主应该用的是非本机数据库用了信任连接,改为用户名连接如:sa
⑸ 关于SQL中的 OPENDATASOURCE()函数
SELECT *
FROM OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=MyUID;Password=MyPass'
).Northwind.dbo.Categories
⑹ SQL错误 消息 7302,级别 16,状态 1
1、SQL服务器上没有安装Microsoft.ACE.OLEDB.12.0相关驱动
2、SQL服务器上没有开启OLEDB的访问权限
3、访问具体的文件必须要在SQL服务器上,并且路径必须是SQL服务器上的物理绝对路径
⑺ sql中opendatasource函数第一个参数问题
Provider=SQLNCLI.1是SQL Server的原生驱动,功能比较完整,但是需要安装SQL Server的客户端驱动程序(即SQL Server Native Client)。
Provider=SQLOLEDB.1是Windows集成的驱动程序,功能不太完善,但对于支持SQL Server 2000已经具有非常完整的功能了。
从SQL Server 2005开始,官方推荐使用SQL Server Native Client。
⑻ mysql不支持opendatasource还是我写的有问题
你好像写错了
select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)你试试这个!
⑼ 跨数据库连表查询sql语句怎么写
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。