當前位置:首頁 » 編程語言 » pg如何訪問oracle表sql
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

pg如何訪問oracle表sql

發布時間: 2022-06-12 23:01:52

Ⅰ 如何把oracle的表導入到postgresql

可以的1、在目的SQL Server資料庫伺服器上安裝ORACLE Client軟體或者ORACLE ODBC Driver.通過oracle客戶端,在netmanager中建立「服務(TNS server)」,並測試連接上oracle資料庫正常2、在sqlserver的DTS(導入和導出數據工具)進行(1)選擇數據源:數據源:oracle in oracle9i選擇:用戶/系統DSN:點擊新建DSN:選擇數據源類型:系統數據源,下一步:選擇驅動程序:oracle in oracle9i,下一步,完成 ,進入oracle odbc driver configration頁面再輸入:datasorce name:GZDSTNS server name:gz(通過netmanager定義好TNS server)user:(oracle登錄用戶)填寫好以後,進行"TEST Connection"可以連通,則點擊「ok」,DSN建立完成數據源選擇完成,點擊「下一步」進入「選擇目的」(2)選擇目的目的:用於SQL Server的Microsoft OLE DB提供程序伺服器:192.168.0.63選擇:使用sqlserver身份登錄用戶名:sa 密碼:pass並刷新,選擇好資料庫:test(目的資料庫,提前建立好的)並點擊「下一步」a.從數據源復製表和數據(下一步:選擇源表及視圖)b.用一條查詢語句指定要傳輸的數據(進行sql編輯)(通過以上選擇好要復制的數據表或者相關視圖)再點擊下一步「保存、調度和復制包」(3)「保存、調度和復制包」時間:立即運行再點擊下一步:進行:「正在完成DTS導入導出」向導(4)完成:點擊:「完成」按鈕,系統進入數據復制「正在執行包」的頁面,可以看到數據正在復雜的進度條注意:在ORACLE表和SQL Server表之間'轉換'那步很重要,可以改變默認的欄位數據類型,如image->text,decimal->int

Ⅱ 如何將postgresql中數據導入到oracle中

遷移PostgreSQL到Oracle涉及到兩方面工作:表結構的遷移和表數據的遷移。 表結構的遷移 表結構的遷移相對簡單可以藉助ESF DatabaseMigration Toolkit進行.。ESF Database MigrationTookit工具是試用版,所以不能通過其遷移數據(它會將所有varch...

Ⅲ 請問ora2pg如何使用,如何將oracle資料庫中的函數,表,存儲過程,數據,觸發器等移植到postgresql里呢

高版本PG可以用oracle_fdw來做,類似DBLINK,很方便。也可以用oracle的spool導出,然後用Postgres的COPY導入,速度也較快。

Ⅳ postgresql如何執行sql文件

原理:
使用"c:\program
files\postgresql\9.0\bin\psql.exe"來建立到postgresql資料庫的連接後執行sql語句。
(建立資料庫連接的方法,可以參考c:\program
files\postgresql\9.0\scripts\runpsql.bat文件。)
一,執行sql語句
set
db_name=temp
"c:\program
files\postgresql\9.0\bin\psql.exe"
-h
localhost
-u
postgres
-d
%db_name%
-p
5432
-w
-c
"select
*
from
table1;"
二,執行sql腳本文件
在sql語句比較復雜時,可以先把sql語句保存到文件中,然後用psql.exe執行該文件。
@rem
move
to
the
current
file's
directory
%~d0
cd
%~dp0
@rem
excute
a
sql
script
file
to
create
database
"c:\program
files\postgresql\9.0\bin\psql.exe"
-h
localhost
-u
postgres
-d
postgres
-p
5432
-w
-f
resource/db/createdb.sql
如果有多個sql腳本文件(如:a.sql,
b.sql,
c.sql),可以新建一個sql腳本文件(index.sql)來調用這多個腳本文件,這樣在bat中只需要一個命令語句,而不需要多次復制相似的命令。新建index.sql文件的內容可以是:
\i
resource/db/createdb.sql
\i
resource/db/createsp.sql
\i
resource/db/insertdata.sql
備註:
在cmd窗口中輸入
"c:\program
files\postgresql\9.0\bin\psql.exe"
-?
可以查找psql的相關命令。
建立了資料庫連接後,可以用help命令,或者\?
查找sql命令。

Ⅳ 怎樣將postgresql數據遷移到oracle中

遷移PostgreSQL到Oracle涉及到兩方面工作:表結構的遷移和表數據的遷移。

表結構的遷移

表結構的遷移相對簡單可以藉助ESF DatabaseMigration Toolkit進行.。ESF Database MigrationTookit工具是試用版,所以不能通過其遷移數據(它會將所有varchar欄位的開頭替換為T)。通過ESF DatabaseMigration Toolkit遷移完成後,通過PL/SQL developer的export userobjects得到創建表結構的語句。

表數據的遷移

數據遷移有2種方式:postgreSQL導出insert語句然後執行語句導入或者postgreSQL導出文件然後用oracle的sqlldr方式導入。前者存在clob難以插入以及sql長度限制等問題,推薦後者方式進行數據遷移。
1.Copy命令導出數據文件
table1 to'd:/table1.data' delimiter as '|' nullas '';
注意:postgreSQL存在boolean類型導出為t或者f(oracle用int類型1或者2來代替),使用cast函數
Copy (select cast(column asint) from table1 )to 'd:/table1.data' delimiter as '|' null as '';
批量執行使用sql函數進行
create functionexportLiferay(path text) returns void
as
$$
begin
execute ' table1 to ''' || path || 'table1_.data''delimiter as ''|'' null as '''' ';

return;
end;
$$
languageplpgsql;

2. 製作sqlldr控制文件
注意:字元集、clob以及時間,日期類型
load data
CHARACTERSET UTF8
into table table1
fields terminated by "|"
optionally enclosed by '"'
trailing nullcols
(
folderid,
groupid,
companyid,
userid,
createdatetimestamp"yyyy-mm-dd hh24:mi:ss.ff",
modifieddatetimestamp"yyyy-mm-dd hh24:mi:ss.ff",
parentfolderid,
name,
descriptionchar(10000)
)

3.執行導入
sqlldr import/import data=table1.data control=table1.ctllog=table1.log readsize=100000000
注意:根據實際情況,調整readsize

Ⅵ 請教oracle連接PG資料庫的問題

wsoc是個鏈接名還是用戶名啊,如果是鏈接名,並且它是屬於當前用戶的鏈接,你可以
select * from {table_name}@wsoc;
當前用戶不能用其它用戶的鏈接,除非它屬於public

你可以查詢字典 dba_db_links看一下鏈接的owner

Ⅶ 有沒辦法在postgreSQL中查詢oracle上的數據

提供三個思路:
第一個:
PostgreSQL中,是可以創建各種語言寫的Function的。
你可以用C寫一個PostgreSQL的Function,
http://www.postgresql.org/docs/9.2/static/xfunc-c.html
在此Function中,可以試著去調用Oracle的C語言訪問介面訪問Oracle資料庫

第二個:
與第一類似。PostgreSQL中,可以運行各種語言:如PL/pgSQL,PL/pgPerl等。
如果你安裝了PL/Java
http://pljava.projects.pgfoundry.org/
http://www.slideshare.net/petereisentraut/postgresql-and-pljava
可考慮在PL/Java的Function中,通過Oracle的JDBC介面來訪問Oracle。

下面的鏈接中非常明確地提到了一個在PostgreSQL的PL/java中訪問Oracle的例子:
http://my.opera.com/myrkraverk/blog/2012/06/21/performing-sql-with-pl-java-in-postgresql

第三個:
採用DBI-Link
其簡介說:
DBI-Link is a partial implementation of the SQL/MED portion of the SQL:2008 specification written in PL/Perl....

If you want to join Oracle tables from PostgreSQL on Debian GNU/Linux, you can use DBI-Link. Also, you can use PostgreSQL queries to access Oracle tables as local schemas.

DBI-Link,部分符合SQL:2008標准,
故此按照此標准你就可以在PostgreSQL中訪問Oracle了。
如下的鏈接是在Debian Linux上的安裝和使用例子:
http://www.techforce.com.br/news/linux_blog/dbi_link_to_oracle_for_postgresql_on_debian#.Ud49CflIjJA

Ⅷ 資料庫遷移時怎樣將oracle的視圖導入postgresql中

一. 如果B資料庫是新建的,為了移植資料庫,那就直接附加,分下列步驟:
1. 打開配置管理器

2. 停止SQL Server服務

3. 在C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data目錄下找到資料庫文件,復制到B電腦上,B電腦打開資料庫附加A資料庫就好了。
二. 如果B資料庫已經曾在,可以使用導出任務
打開資料庫,右鍵點在資料庫上,找到導出任務

按照向導選擇該到處的數據表和視圖。填寫兩個資料庫的驗證信息

Ⅸ php,pdo怎麼連接oracle資料庫

php有強大的功能不但可以支持mysql,mssql,mysqli之個我們還可以與oracle數據連接,要讓php支持oracle非常的簡單我們只要把php.ini中的;extention = php_oci8.dll分號去掉即可.


請先安裝oracle的客戶端,能夠用客戶端訪問oracle。


php支持oracle連接函數

php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分號,重啟apache就可以了,如果不行,我們再把php目錄中的php_oci8.dll拷到windows系統的system32下面去吧.

oracle資料庫建立鏈接,代碼如下:

$conn=oci_connect('username','password',"(DEscriptION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.100)(PORT=1521))(CONNECT_DATA=(SID=test)))");