MsSql 和 Oracle 跨数据库查询
SQL
insert into table_name(colum1,colum2)
select colum1,colum2
from opendatasource('sqloledb','data source=服务器名;user id=用户名 ;password=密码 ').database_name.dbo.table_name
如执行出现以下错误”sql server 阻止了对组件 \'ad hoc distributed queries\' 的访问“,解决方法如下:
启用Ad Hoc Distributed Queries:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
oracle
oracle 中添加配置
test=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.221.0.1)(PORT = 1001))
)
(CONNECT_DATA =
(SERVICE_NAME = servname)
)
)
create public database link linkname connect to 用户名 identified by 密码
using 'test'
select * from table_name@linkname
注意有时候会报 "insufficienct privilege" 请确定角色中是否开通connect的权限哦
相关文档:
关于oracle的行级锁
在oracle中,行级锁只对用户正在访问的行进行锁定。
如果该用户正在修改某行,那么其他用户就可以更新同一表中该行之外的数据。
行级锁是一种排他锁,防止其他事务修改此行,但是不会阻止读取此行的操作
。
在使用INSERT、UPDATE、DELETE 和SELECT…FOR UPDATE 等语句时 ......
首先计算机上必须安装oracle,并配置好服务名
安装oracle的过程中一般会要求建立一个数据库,也可以之后再创建
这个后面有一个 数据库配置助理 (创建修改数据库的,一般密码创建要求字母开头,大于7位啥的)和一个net配置助理(添加或者修改一个数据库服务名),一般用plsql developer远程操作oracle数据库 ......
我们先来看一下他们的定义:
A schema is a collection of database objects (used by a user.).
Schema objects are the logical structures that directly refer to the database’s data.
A user is a name defined in the database that can connect to and access objects.
Schemas and users help database ......
将BLOB保存为本地文档:
/// <summary>
/// 读出Blob字段
/// </summary>
/// <param name="commandText">sql语句,执行结果为BLOB数据</param>
/// <param name="DocumentAddress">将要把BLOB数据保存为的文档的路径</param>
......