主頁 > 知識庫 > 如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫

如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫

熱門標簽:高德地圖標注電話怎么沒了 無錫梁溪公司怎樣申請400電話 電話機器人錄音師薪資 智能電銷機器人教育 江西穩(wěn)定外呼系統(tǒng)供應(yīng)商 北京智能外呼系統(tǒng)供應(yīng)商家 中國地圖標注省份用什么符號 奧維地圖標注字體大小修改 孝感銷售電銷機器人廠家

實際的工作中,我們經(jīng)常會碰到統(tǒng)計數(shù)據(jù)的工作,有些維度的統(tǒng)計數(shù)據(jù)因為工作需要我們需要導(dǎo)出為excel作為報表附件供不同的部門審查。為了方便以后的對比工作,領(lǐng)導(dǎo)會讓在數(shù)據(jù)庫中創(chuàng)建一張表,用于專門記錄這些數(shù)據(jù)。此時我們DBA需要將這些excel表格導(dǎo)入到數(shù)據(jù)庫中,copy和\copy命令為我們提供了解決辦法,本文主要通過copy命令的使用,介紹如何將excel表格導(dǎo)入至數(shù)據(jù)庫中。關(guān)于copy及\copy命令的區(qū)別,請廣大博友通過另一篇文章《如何將postgresql數(shù)據(jù)庫表內(nèi)數(shù)據(jù)導(dǎo)出為excel格式》查看。

1、copy基本語法

COPY { 表名 [ ( 列名稱 [, ...] ) ] 
from { '文件名' | PROGRAM '命令' | STDIN } 
 [ [ WITH ] ( 選項 [, ...] ) ]
 
選項可以是下列內(nèi)容之一
 FORMAT 格式_名稱 
 FREEZE [ 布爾 ] 
 DELIMITER '分隔字符' 
 NULL '空字符串' 
 HEADER [ 布爾 ] 
 QUOTE '引用字符' 
 ESCAPE '轉(zhuǎn)義字符' 
 FORCE_QUOTE { ( 列名稱 [, ...] ) | * } 
 FORCE_NOT_NULL ( 列名稱 [, ...] ) 
 ENCODING 'encoding_name(編碼名)'

2、參數(shù)含義介紹

FORMAT:指復(fù)制到文件的文件類型,如:CSV,TEXT。  
FREEZE :凍結(jié)數(shù)據(jù),然后執(zhí)行VACUUM FREEZE。 
DELIMITER:指在導(dǎo)出文件時的分隔符指定需要用單引號。在TEXT時默認為tab,CSV文件默認是逗號。不支持binary文件格式。 
HEADER:指在復(fù)制到文件時帶上表字段名稱。 
NULL:指定null值,默認為\N。 
QUOTE: 聲明 CSV 模式里的引號字符,缺省是雙引號。
ESACPE: 指定轉(zhuǎn)義符,缺省是 QUOTE 值(通常是雙引號)。
ENCODING:指定文件的編碼,如果沒有指定就默認使用客戶端的字符集。

3、使用示例

①編輯excel表格,填充測試數(shù)據(jù),表格的保存格式為csv格式,編碼原則為UTF-8,逗號分隔。

②將excel表格上傳至數(shù)據(jù)庫服務(wù)器,根據(jù)表格字段創(chuàng)建對應(yīng)表。

postgres=# create table movie_star(user_id int,user_name varchar(100),age int,gender text,address varchar(100),remark text);
CREATE TABLE
postgres=# 
postgres=# 
postgres=# 
postgres=# select * from movie_star ;
 user_id | user_name | age | gender | address | remark 
---------+-----------+-----+--------+---------+--------
(0 rows)

③使用copy命令導(dǎo)入excel數(shù)據(jù)。

postgres=# copy movie_star from '/pg/movie_star.csv' with csv header;
COPY 9
postgres=# 
postgres=# select * from movie_star ;
 user_id | user_name | age | gender | address |   remark   
---------+---------------+-----+--------+-------------------+------------------------------------------
 1 | Jackie Chan | 45 | male | HK,CHINA,ASIA | police story project A rush hour
 2 | Gong Li | 38 | female | "Singapore",ASIA | Farewell My Concubine Lifetimes Living
 3 | Brigitte Lin | 46 | female | HK,CHINA,ASIA | 
 4 | Maggie Cheung | 39 | female | HK,CHINA,ASIA | 
 5 | Jet Li | 41 | male | "Singapore",ASIA | Fist of LegendOnce Upon a Time in China
 6 | Jacky Cheung | 35 | male | HK,CHINA,ASIA | 
 7 | Chow Yun Fat | 48 | male | HK,CHINA,ASIA | 
 8 | Donnie Yen | 36 | male | HK,CHINA,ASIA | 
 9 | Stephen Chow | 40 | male | HK,CHINA,ASIA | 

④查看上傳至服務(wù)器內(nèi)的excel表格數(shù)據(jù)

postgres=# \!! cat /pg/movie_star.csv
user_id,user_name,age,gender,address,remark
1,Jackie Chan,45,male,"HK,CHINA,ASIA ",police story project A rush hour
2,Gong Li,38,female," ""Singapore"",ASIA", Farewell My Concubine Lifetimes Living
3,Brigitte Lin,46,female," HK,CHINA,ASIA",
4,Maggie Cheung,39,female,"HK,CHINA,ASIA ",
5,Jet Li,41,male,"""Singapore"",ASIA", Fist of LegendOnce Upon a Time in China
6,Jacky Cheung ,35,male,"HK,CHINA,ASIA",
7,Chow Yun Fat,48,male,"HK,CHINA,ASIA",
8, Donnie Yen,36,male,"HK,CHINA,ASIA",
9,Stephen Chow,40,male,"HK,CHINA,ASIA",

通過在excel表格我們可以看到,將excel表格保存為csv格式(UTF-8,逗號分隔)后,系統(tǒng)自動對表格內(nèi)的數(shù)據(jù)進行了格式轉(zhuǎn)換,部分字段內(nèi)加入了轉(zhuǎn)義符,比如雙引號,逗號等,避免了數(shù)據(jù)導(dǎo)入出錯。

到此這篇關(guān)于如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • PostgreSql 導(dǎo)入導(dǎo)出sql文件格式的表數(shù)據(jù)實例
  • postgresql 實現(xiàn)數(shù)據(jù)的導(dǎo)入導(dǎo)出
  • 如何將postgresql數(shù)據(jù)庫表內(nèi)數(shù)據(jù)導(dǎo)出為excel格式(推薦)

標簽:海北 荊州 齊齊哈爾 阜陽 通化 那曲 臨滄 泰州

巨人網(wǎng)絡(luò)通訊聲明:本文標題《如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫》,本文關(guān)鍵詞  如何,將,excel,表格,數(shù)據(jù),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫》相關(guān)的同類信息!
  • 本頁收集關(guān)于如何將excel表格數(shù)據(jù)導(dǎo)入postgresql數(shù)據(jù)庫的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章