OpenJWeb 1 8資料庫管理工具功能說明

2021-05-09 16:37:29 字數 2932 閱讀 8866

msn:[email protected]

email:[email protected]

聯絡人:王先生

openjweb 1.8

資料庫管理工具功能說明

由於使用

sqlserver

dts跨資料庫複製功能經常失敗,所以

openjweb

開發組自行開發了資料庫複製功能。

在使用

dts

oracle

導資料到

sqlserver

失敗經常是由於以下問題造成:

(1)

主外來鍵關聯欄位的長度不一樣,

oracle

是允許的,

sqlserver

是不允許的。

(2)

oralce

number

型別

轉到

sqlserver

就變成

float

型別,而不是期望的

bigint

型別,如果手工設定,則需要大量的時間修改。

(3)

oracle

中,定義了唯一索引的字段,允許不同記錄的此唯一索引欄位是空值,只在非空的時候在檢驗是否唯一,但在

sqlserver

中,唯一索引字段空值被認為是重複的,匯入會失敗。

(4)

openjweb

資料庫管理工具具有以下功能:

(1)可為指定的資料庫生成完整的建表語句、主外來鍵、索引的

ddl語法。目前已在

oracle/sqlserver/mysql

環境下測試通過。

(2)可將指定的資料庫的定義語句翻譯成其他資料庫的定義語句,例如指定乙個

oracle

的資料來源,可按

sqlserver

的語法格式生成資料庫建表語句。

(3)利用

jdbc

從資料庫中獲取表字段元資訊,從而生成此資料庫的表字段定義說明文件。表字段的列明、長度、小數字等資訊是通過

jdbc

的呼叫獲取的,表字段的中文說明資訊是從

openjweb

的表字段屬性表中獲取的。

(4)實現跨資料庫的資料完整複製。因為使用資料庫開發工具匯出文字

sql存在以下問題:

a)由於主外來鍵關係,插入表時需要遵循主鍵表在前,外來鍵表在後的插入順序,但很多資料庫開發工具是按表名順序匯出資料的,所以匯入資料時還要進行調整。

b)二進位製欄位,例如字段不能通過純文字的方式匯出到

sql文字檔案中,所以需要通過程式直接從源庫抓取資料複製到目的資料庫,不需要中間匯出

sql文字檔案。

下面是openjweb

的資料庫管理工具的介紹:

(1)指定乙個源資料庫,並指定乙個目標資料庫型別,可生成目標資料庫的建表語法,包括建表語句、主外來鍵、索引定義語句。下圖是指定了

oracle

資料來源後,按

sqlserver

的語法結構生成

sqlserver ddl

的頁面,生成的

ddl語句用於在

sqlserver

中建立資料庫表。

上表中欄位名、資料型別、長度、小數字、可空、主鍵、預設值等字段屬性都是使用

jdbc

的標準api

從資料庫中獲取的,字段中文名和注釋是從

openjweb

平台的comm_column_def

中獲取的,表名的中文和注釋是從

openjweb

平台的comm_table_def

中獲取的。使用此工具可代替手工編寫資料庫設計文件的工作,並使得設計文件與實際系統同步。

(3)跨資料庫的資料完整複製功能(當然同型別資料庫複製也是可以的)

採用第1

步生成的語法結構建立目標資料庫後,然後可以使用資料複製功能,將所有表資料從源資料庫複製到目標資料庫,見下圖

(oracle

到mysql

的資料庫複製。本平台目前已測通

oracle

到mysql

和sqlserver

的資料庫複製):

上圖是資料複製頁面,當設定了源資料庫和目標資料庫引數後,點「開始複製」按鈕,可將源資料庫的所有資料複製到目標資料庫中。(前提是目標資料庫的表結構已按第

1步生成)。匯入時自動遵循先複製主鍵表,後複製外來鍵表的原則(多層主外來鍵也支援)。

平台因為有了上述功能,可以很方便地將最新的資料庫版本轉換為其他型別的資料庫。不再需要花費大量的時間進行資料庫轉換工作。

18 資料庫案例

add findviewbyid r.id.add delete findviewbyid r.id.delete updata findviewbyid r.id.updata select findviewbyid r.id.select liv findviewbyid r.id.liv 先建...

資料庫學習 18 變數

說明 變數由系統定義,不是使用者定義,屬於伺服器層面。注意 全域性變數需要新增global關鍵字,會話變數需要新增session關鍵字,如果不寫,缺省會話級別。使用步驟 1 檢視所有系統變數 show global variables 檢視全域性變數 show session variables 檢...

18 暑 資料庫 關於資料庫的整理

因為activiti要用到資料庫,但是忘記了密碼,試了很多網上的方法都花式報錯 重下msi的資料庫總是出現這種 mysql解除安裝教程用的這個 解除安裝完了過後重新安裝 用的菜鳥教程 其中遇到的問題 1.這裡檔案裡路徑要根據你改變,其中datadir儲存的路徑必須是乙個空檔案 可以自己新建乙個dat...