oracle資料轉入到sqlserver的一次記錄

2022-08-20 22:30:10 字數 2288 閱讀 3629

首先把oracle的資料查詢出來,資料比較多的話需要分頁,plsql查詢超過12w條就會卡主,所以本次使用分頁查詢,每次查詢10w條,

然後將資料複製到excel當中。

select /*+ first_rows */ * from   

( select a.*, rownum rn

from (

select a.houseno,b.lmapno from sep a left join

tosep b on a.sepid=b.sepid

) a

where rownum <=400000

) where rn >300000

excel的資料每個sheet頁也有限制,我用的是07版的excel,每個sheet頁最多顯示65536頁。所以10w條資料變成了2個sheet,

接下來就是將excel匯入到sqlserver當中,選擇要匯入的資料庫選中【表】右鍵選擇【所有任務】選中【匯入資料】開啟dts工具,選擇下一步

在【選擇資料來源】這一步,選擇對應的excel版本和excel存放的路徑,點選下一步

【選擇目的】這一步不用修改

【指定表複製或查詢】我選擇第乙個:從源資料庫複製表和檢視

【選擇表和檢視】這一步最重要:需要選擇對應的excel資料sheet頁,並在【目的】中指定要生成的表名字(表名字可以重複,在最後匯入時。如果表名是重複的會提示建立表失敗,但資料仍然可以匯入進去)

然後選擇下一步。

匯入之後檢視資料發現一些列明明有值,卻顯示成了null,第一時間反應是轉換出錯了,資料型別不對應,網上搜素有很多解決辦法,

我採用的是這一種:在excel中找到工具欄【資料】選項卡,選擇【分列】功能,分列功能共3步,前2步不管,直接到第三部,選擇【文字】資料格式,點選完成

如下圖:注意:直接右鍵修改單元格格式為文字,是沒有用的

excel這樣處理後,再次匯入,查詢發現資料基本正常,然後用相應的sql語句匯入對應的**即可

這是我本次使用的一些語句

--

將資料匯入表中,一些nvarchar需要轉換成float,使用cast函式,轉換2次的原因是

--轉一次的話有的資料小數點後莫名多了很多位,這是網上的解決辦法,轉2次

insert

/**/

into

record_txf (earth_no,land_card,location,room_user,jz_area1,ft_area,pic_no,usage,zong_area,build,room,child_no,memo,dead_time)

select landno,landcerno,lrepose,obligee,cast(cast(buildarea as

decimal(18,0)) as

float) as bu,luparea_a,lmapno,convert(varchar(50),landuse),cast(cast(luparea as

decimal(18,0)) as

float) as

lu,houseno,roomno,landfgno,landnoall,lenddate

from

txf11 a

where

notexists (select

1from

record_txf b

where a.obligee=b.room_user and a.landno=b.earth_no and a.landfgno=b.child_no)

--將乙個表中的資料複製到另外乙個新錶中的語句

select * into record_txf from record2016824_14

--sqlserver的列連線方法,oracle是||,sqlserver是++

select earth_no+'-'+child_no from record_txf

Oracle使用dblink連線SqlServer

使用場景 當你需要從oracle資料庫上訪問另一台sqlserver資料庫的資料時,oracle提供了乙個工具 gateways。通過這個工具,你可以建立dblink來連線sqlserver或其他不同公司的資料庫 取決於你安裝時的選項。安裝gateways後,使用下列2種方式可建立dblink 方式...

Oracle同步資料到MySQL

oracle同步資料到mysql 1 首先在treesoft資料庫中配置兩個資料來源資訊 2 配置資料同步任務,並執行任務 3 同步結果資料檢視確認 4 目前treesoft支援以下資料同步方案 1 mysql同步資料到oracl 2 mysql同步資料到postgresql 3 mysql同步資料...

Excel資料匯入到oracle

excel資料匯入到oracle 第一步 將要匯入的excel檔案開啟,選擇 另存為 在檔案型別那裡選擇 文字.txt 後確定儲存 第二步 開啟記事本,編寫下列的內容 注釋 1 控制檔案標識 2 剛才由excel檔案轉化過來的檔案的路徑 3 向oracle的資料表t network agent ba...