sql server 和oracle 数据库的通讯

sql server 数据库往oracle数据中插入查询数据
 在sql server 中数据库中建立 链接服务器。
 链接服务器名字自己可随意起。产品名称是oracle 。数据源名称是在本机建立的odbc数据源的名称。
 select sfz from openquery(jkda, 'SELECT sfz FROM hr_basicInfo')
 通过openquery查询出oracle中的数据。其中jkda为链接服务器的名字。
 插入语句
 INSERT OPENQUERY(jkda, 'select id,id_no,pat_name,address,gender_id from hr_basicInfo')
select pid,  sfz,brxm,xzz ,xb = case when xb= '男'then 1 when xb='女'then 3 else 0  end  from
(select row_number() over(partition by sfz order by pid) rid from jbxx) b
where rid=1 and sfz not in ( select id_no from openquery(jkda, 'SELECT id_no FROM hr_basicInfo'))

在sqlserver 中可以新建一个作业来定时执行sql语句。

(select row_number() over(partition by sfz order by pid) rid from jbxx) b
where rid=1
根据身份证号分区,根据pid 分组,row_number() 行数,wher rid = 1 则表明行数为1的,这样可以去掉重复数据。

 

你可能感兴趣的:(oracle,sql,SQL Server)