當前位置:首頁 » 數據倉庫 » mysql里包含oracle資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

mysql里包含oracle資料庫

發布時間: 2022-06-30 03:20:34

Ⅰ 我想把oracle資料庫的內容導入到mysql

你的這種辦法可能實現不了,Oracle數據備份出來的是.dmp文件,我想你用oracle一般會用到Toad或者plSql外部工具,可把所有數據導出到EXCEL中,然後倒入到MySql中就可以了,直接誒倒入可能有問題 追問: 您說的這種方法是一張表一張表的來吧,我資料庫有幾千張表呢…… 回答: 這樣可能就麻煩一點了,1.你可以把數據寫成txt文件,MySql在文件中讀取 追問: 我現在已經用一個第三方工具把oracle的表結構匹配到mysql中了,就等著插數據了。 回答: 編寫一個程序,讀oracle用戶下的所有表及所有表數據,存到dataset中,然後批量插入到MySql中,這個能否明白 要不你就一張一張的導了 追問: 剛請教了一個高手,可以先從oracle導到sqlserver,再從sqlserver導到mysql。不知道可行否…… 回答: 你直接在SQl Server 裡面連接數據源(連接到oracle資料庫),直接利用sqlServer的數據導入功能不就得了....... 張飛綉埖 的感言: 謝謝,高手 2011-04-14

Ⅱ mysql資料庫和oracle資料庫的區別

1、體積不同。
Oracle它體積比較龐大,一般是用來開發大型應用(例如分布式)的。而MySQL的體積相對來說比較小,較之Oracle更容易安裝、維護以及管理,操作也簡單,最重要的是它是三個中唯一一個開源資料庫,但目前也屬於Oracle公司的產品了。
2、容量不同。
Oracle容量無限,根據配置決定;而MySQL使用MyISAM存儲引擎,最大表尺寸為65536TB。 MySQL資料庫的最大有效表尺寸通常是由操作系統對文件大小的限制決定的,而不是由MySQL內部限制決定。
3、平台支持及速度的區別。
Oracle支持大多數平台;而MySQL支持各種平台,適合Linux。至於速度,Oracle在Linux下的性能,在少量數據時速度低於MySQL,在千萬級時速度快於MySQL。
4、資料庫崩潰造成的影響不同。
Oracle資料庫崩潰後恢復很麻煩,因為他把很多東西放在內存里;資料庫連接要慢些,最好用連接池;而MySQL使用預設的IP埠,但是有時候這些IP也會被一些黑客闖入,使用MyISAM配置,不慎損壞資料庫,結果可能會導致所有的數據丟失。
5、性能的區別。
Oracle全面,完整,穩定,但一般數據量大,對硬體要求較高 ;而MySQL使用CPU和內存極少,性能很高,但擴展性較差。
6、授權價格區別。
Oracle價格較貴,例如Oracle 10G/11G 標准版 [10用戶]¥25600 ,Oracle 10G/11G 標准版 [1CPU無限用戶] ¥157600。而MySQL採用雙重授權,他們是GPL和MySQLAB制定的商業許可協議。如果你在一個遵循GPL的自由項目中使用 MySQL,那麼你可以遵循GPL協議免費使用MySQL。否則,你需要購買MySQLAB制定的那個商業許可協議。

Ⅲ oracle和mysql區別是什麼

oracle和mysql區別是:所屬公司的不同、資料庫的層次結構的不同、資料庫中表欄位類型的不同。

1、所屬公司的不同

mysql與oracle都是關系型資料庫,應用於各種平台。mysql最開始是一個瑞典公司開發的,但後來被sun公司收購,後來sun又被oracle收購,所以現在可以說mysql屬於甲骨文公司了,mysql開源免費的,而oracle則是收費的,並且價格非常高。

mysql默認埠:3306,默認用戶:root。
oracle默認埠:1521,默認用戶:system。

2、資料庫的層次結構的不同

mysql:默認用戶是root,用戶下可以創建好多資料庫,每個資料庫下還有好多表,一般情況下都是使用默認用戶,不會創建多個用戶。

oracle:創建一個資料庫,資料庫下有好多用戶:sys、system、scott等,不同用戶下有好多表,一般情況下只創建一個資料庫用。

3、資料庫中表欄位類型的不同

mysql:int、float、double等數值型,varchar、char字元型,date、datetime、time、year、timestamp等日期型。

oracle:number(數值型),varchar2、varchar、char(字元型),date(日期型)等…
其中char(2)這樣定義,這個單位在oracle中2代表兩個位元組,mysql中代表兩個字元。
其中varchar在mysql中,必須給長度例如varchar(10)不然插入的時候出錯。

Ⅳ 在mysql中怎麼連接oracle資料庫的的相關推薦

如果你的用戶名叫 dbuser

在sql*plus中

select table_name from all_tables where owner='dbuser';

關鍵就是all_tables這個視圖

就可以顯示出用戶名為dbuser可以訪問到的表的名字了

如果你有dba許可權的就可以查 dba_tables,就可以查出資料庫裡面所有的表的情況

另:

SQL> @s<回車>

會自動查詢當前用戶下的所有表、視圖、同義詞。

我也是oracle的新手,推薦一個網站www.itpub.net,你會有驚喜的

Ⅳ 如何使用Mysql連接oracle資料庫

輸入sqlplus,然後提示輸入用戶名,直接輸入user/password@database就可以了,然後出來sql>,就可以輸入各種語句了

Ⅵ mysql表怎麼導入oracle資料庫

1、用navicat
premium,可以同時連接mysql和oracle,支持在各種資料庫系統間傳輸數據
2、用mysqlmp備份數據
mysqlmp
-uuser01
-pp123456
db01
>
db01.sql
3、然後在oracle導入sql數據
SQL>@db01.sql
可能會有語句兼容問題,根據提示db01.sql參數

Ⅶ oracle資料庫和mysql資料庫的區別

Oracle資料庫與MySQL資料庫的區別是本文我們主要介紹的內容,希望能夠對您有所幫助。
1.組函數用法規則
mysql中組函數在select語句中可以隨意使用,但在oracle中如果查詢語句中有組函數,那其他列名必須是組函數處理過的,或者是group by子句中的列否則報錯
eg:
select name,count(money) from user;這個放在mysql中沒有問題在oracle中就有問題了。
2.自動增長的數據類型處理
MYSQL有自動增長的數據類型,插入記錄時不用操作此欄位,會自動獲得數據值。ORACLE沒有自動增長的數據類型,需要建立一個自動增長的序列號,插入記錄時要把序列號的下一個值賦於此欄位。
CREATE SEQUENCE序列號的名稱(最好是表名+序列號標記)INCREMENT BY 1 START WITH 1 MAXVALUE 99999 CYCLE NOCACHE;
其中最大的值按欄位的長度來定,如果定義的自動增長的序列號NUMBER(6),最大值為999999
INSERT語句插入這個欄位值為:序列號的名稱.NEXTVAL
3.單引號的處理
MYSQL里可以用雙引號包起字元串,ORACLE里只可以用單引號包起字元串。在插入和修改字元串前必須做單引號的替換:把所有出現的一個單引號替換成兩個單引號。
4.翻頁的SQL語句的處理
MYSQL處理翻頁的SQL語句比較簡單,用LIMIT開始位置,記錄個數;PHP里還可以用SEEK定位到結果集的位置。ORACLE處理翻頁的SQL語句就比較繁瑣了。每個結果集只有一個ROWNUM欄位標明它的位置,並且只能用ROWNUM<100,不能用ROWNUM>80。
以下是經過分析後較好的兩種ORACLE翻頁SQL語句(ID是唯一關鍵字的欄位名):
語句一:
SELECT ID, [FIELD_NAME,...] FROM
TABLE_NAME WHERE ID IN ( SELECT ID FROM (SELECT ROWNUM AS NUMROW, ID
FROM TABLE_NAME WHERE 條件1 ORDER BY 條件2) WHERE NUMROW > 80 AND NUMROW
< 100 ) ORDER BY 條件3;
語句二:
SELECT * FROM (( SELECT ROWNUM AS
NUMROW, c.* from (select [FIELD_NAME,...] FROM TABLE_NAME WHERE 條件1
ORDER BY 條件2) c) WHERE NUMROW > 80 AND NUMROW < 100 ) ORDER BY
條件3;
5.長字元串的處理
長字元串的處理ORACLE也有它特殊的地方。INSERT和UPDATE時最大可操作的字元串長度小於等於4000個單位元組,如果要插入更長的字元串,請考慮欄位用CLOB類型,方法借用ORACLE里自帶的DBMS_LOB程序包。插入修改記錄前一定要做進行非空和長度判斷,不能為空的欄位值和超出長度欄位值都應該提出警告,返回上次操作。
6.日期欄位的處理
MYSQL日期欄位分DATE和TIME兩種,ORACLE日期欄位只有DATE,包含年月日時分秒信息,用當前資料庫的系統時間為SYSDATE,精確到秒,或者用字元串轉換成日期型函數TO_DATE(『2001-08-01』,』YYYY-MM-DD』)年-月-日24小時:分鍾:秒的格式YYYY-MM-DD
HH24:MI:SS TO_DATE()還有很多種日期格式,可以參看ORACLE
DOC.日期型欄位轉換成字元串函數TO_CHAR(『2001-08-01』,』YYYY-MM-DD HH24:MI:SS』)
日期欄位的數學運算公式有很大的不同。MYSQL找到離當前時間7天用DATE_FIELD_NAME
> SUBDATE(NOW(),INTERVAL 7 DAY)ORACLE找到離當前時間7天用 DATE_FIELD_NAME
>SYSDATE - 7;
MYSQL中插入當前時間的幾個函數是:NOW()函數以`'YYYY-MM-DD
HH:MM:SS'返回當前的日期時間,可以直接存到DATETIME欄位中。CURDATE()以』YYYY-MM-DD』的格式返回今天的日期,可以直接存到DATE欄位中。CURTIME()以』HH:MM:SS』的格式返回當前的時間,可以直接存到TIME欄位中。例:insert
into tablename (fieldname) values (now())
而oracle中當前時間是sysdate
7.空字元的處理
MYSQL的非空欄位也有空的內容,ORACLE里定義了非空欄位就不容許有空的內容。按MYSQL的NOT NULL來定義ORACLE表結構,導數據的時候會產生錯誤。因此導數據時要對空字元進行判斷,如果為NULL或空字元,需要把它改成一個空格的字元串。
8.字元串的模糊比較
MYSQL里用欄位名like%『字元串%』,ORACLE里也可以用欄位名like%『字元串%』但這種方法不能使用索引,速度不快,用字元串比較函數instr(欄位名,『字元串』)>0會得到更精確的查找結果。
9.程序和函數里,操作資料庫的工作完成後請注意結果集和指針的釋放。
=======================================================================================

1. Oracle是大型資料庫而Mysql是中小型資料庫,Oracle市場佔有率達40%,Mysql只有20%左右,同時Mysql是開源的而Oracle價格非常高。
2. Oracle支持大並發,大訪問量,是OLTP最好的工具。
3. 安裝所用的空間差別也是很大的,Mysql安裝完後才152M而Oracle有3G左右,且使用的時候Oracle佔用特別大的內存空間和其他機器性能。
4.Oracle也Mysql操作上的區別
①主鍵

Mysql一般使用自動增長類型,在創建表時只要指定表的主鍵為auto increment,插入記錄時,不需要再指定該記錄的主鍵值,Mysql將自動增長;Oracle沒有自動增長類型,主
鍵一般使用的序列,插入記錄時將序列號的下一個值付給該欄位即可;只是ORM框架是只要是native主鍵生成策略即可。
②單引號的處理
MYSQL里可以用雙引號包起字元串,ORACLE里只可以用單引號包起字元串。在插入和修改字元串前必須做單引號的替換:把所有出現的一個單引號替換成兩個單引號。
③翻頁的SQL語句的處理
MYSQL處理翻頁的SQL語句比較簡單,用LIMIT 開始位置, 記錄個數;ORACLE處理翻頁的SQL語句就比較繁瑣了。每個結果集只有一個ROWNUM欄位標明它的位置, 並且只能用
ROWNUM<100, 不能用ROWNUM>80
④ 長字元串的處理
長字元串的處理ORACLE也有它特殊的地方。INSERT和UPDATE時最大可操作的字元串長度小於等於4000個單位元組, 如果要插入更長的字元串, 請考慮欄位用CLOB類型,方法借用
ORACLE里自帶的DBMS_LOB程序包。插入修改記錄前一定要做進行非空和長度判斷,不能為空的欄位值和超出長度欄位值都應該提出警告,返回上次操作。
⑤空字元的處理
MYSQL的非空欄位也有空的內容,ORACLE里定義了非空欄位就不容許有空的內容。按MYSQL的NOT NULL來定義ORACLE表結構, 導數據的時候會產生錯誤。因此導數據時要對空字元
進行判斷,如果為NULL或空字元,需要把它改成一個空格的字元串。
⑥字元串的模糊比較
MYSQL里用 欄位名 like '%字元串%',ORACLE里也可以用 欄位名 like '%字元串%' 但這種方法不能使用索引, 速度不快。
⑦Oracle實現了ANSII SQL中大部分功能,如,事務的隔離級別、傳播特性等而Mysql在這方面還是比較的弱。

Ⅷ 怎麼在mysql中查詢oracle資料庫

使用具有dba許可權的帳號登錄資料庫
執行命令"select username from dba_users"
官方文檔對dba_users的定義:DBA_USERS describes all users of the database.因此可以如此查詢。

Ⅸ 如何將mysql中的數據導入到oracle資料庫中

添加oracle驅動,在mysql裡面新建oracle的鏈接對象,配好鏈接對象後就能從mysql直接訪問oracle的數據,也就能導入oracle的數據。