postgresql復制資料庫
⑴ postgresql資料庫中怎麼復製表結構和完全復製表,如oracle中create table a as select * from b
Oracle 的例子
SQL>SELECT
2*
3FROM
4test_main;
IDVALUE
--------------------
1ONE
2TWO
SQL>CREATETABLEtest_tASSELECT*FROMtest_main;
表已創建。
SQL>select*FROMtest_t;
IDVALUE
--------------------
1ONE
2TWO
postgresql 的例子
Test=#CREATETABLEtest_tAS(SELECT*FROMtest_main);
SELECT2
Test=#select*fromtest_t;
id|value
----+-------
1|ONE
2|TWO
(2行記錄)
我不知道是不是 Postgresql 那裡要加個括弧啊, 哈哈。
⑵ 在PostgreSQL中怎麼把一個資料庫中一個表的數據復制到另一個資料庫的表中 高手們幫幫忙,很急!!!
Postgresql不支持跨資料庫操作。
可以通過pg_mp加上pg_restore或psql來完成遷移
或者直接使用sql語句中的語句來完成數據的遷移
具體看你的情況來選擇一個合適的方法,你可以加我HI,我給你些建議
⑶ postgresql從一個資料庫轉到另一個資料庫有沒有方便的方法
Postgresql不支持跨資料庫操作。
可以通過pg_mp加上pg_restore或psql來完成遷移,或者直接使用sql語句中的語句來完成數據的遷移。
⑷ 如何向postgresql資料庫里導入其它類型的數據
是不是如何將mssql的數據導入到acc中如果是的話給你,如果不是當我沒說,因為不知道postgresql是什麼
SQL
SERVER
和ACCESS的數據導入導出
常規的數據導入導出:
使用DTS向導遷移你的Access數據到SQL
Server,你可以使用這些步驟:
1在SQL
SERVER企業管理器中的Tools(工具)菜單上,選擇Data
Transformation
2Services(數據轉換服務),然後選擇
czdImport
Data(導入數據)。
3在Choose
a
Data
Source(選擇數據源)對話框中選擇Microsoft
Access
as
the
Source,然後鍵入你的.mdb資料庫(.mdb文件擴展名)的文件名或通過瀏覽尋找該文件。
4在Choose
a
Destination(選擇目標)對話框中,選擇Microsoft
OLE
DB
Prov
ider
for
SQL
Server,選擇資料庫伺服器,然後單擊必要的驗證方式。
5在Specify
Table
Copy(指定表格復制)或Query(查詢)對話框中,單擊Copy
tables(復製表格)。
6在Select
Source
Tables(選擇源表格)對話框中,單擊Select
All(全部選定)。下一步,完成。
Transact-SQL語句進行導入導出:
1.
在SQL
SERVER里查詢access數據:
SELECT
*
FROM
OpenDataSource(
'Microsoft.Jet.OLEDB.4.0','Data
Source="c:\DB.mdb";User
ID=Admin;Password=')...表名
2.
將access導入SQL
server
在SQL
SERVER
里運行:
SELECT
*
INTO
newtable
FROM
OPENDATASOURCE
('Microsoft.Jet.OLEDB.4.0',
'Data
Source="c:\DB.mdb";User
ID=Admin;Password='
)...表名
3.
將SQL
SERVER表裡的數據插入到Access表中
在SQL
SERVER
里運行:
insert
into
OpenDataSource(
'Microsoft.Jet.OLEDB.4.0',
'Data
Source="
c:\DB.mdb";User
ID=Admin;Password=')...表名
(列名1,列名2)
select
列名1,列名2
from
sql表
實例:
insert
into
OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'C:\db.mdb';'admin';'',
Test)select
id,name
from
Test
INSERT
INTO
OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'c:\trade.mdb';
'admin';
'',
表名)
SELECT
*
FROM
sqltablename
⑸ postgresql資料庫 命令導入表不成功
開始覺得這個導入是個比較簡單的事情,經過測試你的這個,發現還不簡單。
經過嘗試,發現在導入時,需要在cvs文件中加入導入欄位的定義,即第一行需要有欄位名,然後在命令中要指定選項header為true.另外,為了保證成功,還加入format指定為csv,文件格式指定為utf8。
我的導入命令:
aa_log(id,callid,calledid)
from'e: 01.csv'
with(formatcsv,headertrue,quote'"',DELIMITER',',encoding'UTF8');
導入文件內容:
id,callid,calledid
1,2,3
4,5,6
導入結果如下圖,
⑹ 求postgreSQL 的資料庫的表數據,導入導出的sql語句,謝謝!
Postgresql數據的導入和導出,以及命令介紹
如何導出PostgreSQL資料庫中的數據:
pg_mp -U postgres -f mp.sql mydatabase
具體某個表
pg_mp -U postgres -t mytable -f mp.sql mydatabase
導入數據時首先創建資料庫再用psql導入:
createdb newdatabase
psql -d newdatabase -U postgres -f mp.sql
把數據按照自己所想的方式導出,強大的命令:
echo " students to? stdout DELIMITER '|'"|psql school|head
(students為表名,school為庫名,各個欄位以|分隔)
echo ' (select * from students order by age limit 10) to stdout;' | psql school
⑺ postgresql 資料庫流復制需要配置 歸檔模式嗎
是的.archive_mode=on
⑻ 如何導入PostgreSQL資料庫數據
windows下
運行pg_mpall > outfile
linux下
psql -f outfile postgres
如果是在兩台不同的計算機上,虛擬機當然也算,同時啟動兩台電腦的postgres服務
可以
pg_mp -h host1 dbname | psql -h host2 dbname
如果資料庫比較簡單,建議直接在新的資料庫中,新建表等邏輯結構,在通過舊的資料庫中運行 table to file with csv
新的資料庫中運行 table from file with csv導入數據