Go語言開發(fā)中PostgreSQL的應(yīng)用

PostgreSQL是一個功能強(qiáng)大的開源對象關(guān)系數(shù)據(jù)庫管理系統(tǒng)(ORDBMS)旬昭。 用于安全地存儲數(shù)據(jù); 支持最佳做法,并允許在處理請求時檢索它們舱卡。
PostgreSQL(也稱為Post-gress-Q-L)由PostgreSQL全球開發(fā)集團(tuán)(全球志愿者團(tuán)隊)開發(fā)队萤。 它不受任何公司或其他私人實體控制。 它是開源的要尔,其源代碼是免費(fèi)提供的。
PostgreSQL是跨平臺的蝴簇,可以在許多操作系統(tǒng)上運(yùn)行熬词,如Linux,F(xiàn)reeBSD歪今,OS X,Solaris和Microsoft Windows等寄猩。
下面主要講講PostgreSQL在Go語言開發(fā)中的應(yīng)用
首先創(chuàng)建相應(yīng)的數(shù)據(jù)庫和表

CREATE DATABASE medex
  WITH OWNER = kekang
       ENCODING = 'UTF8'
       TABLESPACE = pg_default
       LC_COLLATE = 'C'
       LC_CTYPE = 'C'
       CONNECTION LIMIT = -1;

CREATE TABLE public.student
(
  uid integer NOT NULL DEFAULT nextval('student_uid_seq'::regclass),
  name character(256),
  sex character(5),
  address character(256),
  age smallint,
  CONSTRAINT uid PRIMARY KEY (uid)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public.student
  OWNER TO kekang;
一田篇、數(shù)據(jù)庫的鏈接
db, err := sql.Open("postgres", "user=kekang password=kkwangbiao dbname=medex sslmode=disable")
二泊柬、數(shù)據(jù)庫的插入
func instertToPostgresDB(db *sql.DB) {
    stmt, err := db.Prepare("INSERT INTO student(name,sex,address,age) VALUES($1,$2,$3,$4)")
    _, err = stmt.Exec("zhangcheng", "F", "yuuyyuu小學(xué)", 2)
}
三、數(shù)據(jù)庫的更新
func updatePostgresDB(db *sql.DB) {
    stmt, err := db.Prepare("update student set name=$1 where uid=$2")
    checkErr(err)
    res, err := stmt.Exec("zhangsanup", 1)
    checkErr(err)
    affected, err := res.RowsAffected()
    checkErr(err)
    fmt.Println(affected)
}
四兽赁、數(shù)據(jù)庫的查詢
func selectFromPostgresDB(db *sql.DB) {
    rows, err := db.Query("select * from student")
    for rows.Next() {
        var uid int
        var name string
        var sex string
        var address string
        var age int
        err = rows.Scan(&uid, &name, &sex, &address, &age)
        checkErr(err)
        fmt.Println(uid)
        fmt.Println(name)
        fmt.Println(sex)
        fmt.Println(address)
        fmt.Println(age)
    }
}
五刀崖、數(shù)據(jù)庫的刪除
func deleteFromPostgresDB(db *sql.DB) {
    stmt, err := db.Prepare("delete from student where uid=$1")
    checkErr(err)
    res, err := stmt.Exec(1)
    checkErr(err)
    affect, err := res.RowsAffected()
    fmt.Println(affect)
}

方法中用到的自定義函數(shù)
func checkErr(err error) {
    if err != nil {
        panic(err)
    }
}
同mySQL的比較

PostgreSQL是通過$1,$2這種方式來指定要傳遞的參數(shù)亮钦,
MySQL中通過?方式來傳遞參數(shù)授翻,
在sql.Open函數(shù)中的dsn信息的格式也與MySQL的驅(qū)動中的dsn格式不一樣

參考教程

PostgreSQL教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末堪唐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子男公,更是在濱河造成了極大的恐慌合陵,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件踏拜,死亡現(xiàn)場離奇詭異低剔,居然都是意外死亡肮塞,警方通過查閱死者的電腦和手機(jī)姻锁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門位隶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人涧黄,你說我怎么就攤上這事×堤罚” “怎么了挽鞠?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵信认,是天一觀的道長均抽。 經(jīng)常有香客問我油挥,道長,這世上最難降的妖魔是什么攘乒? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任惋鹅,我火速辦了婚禮,結(jié)果婚禮上沽讹,老公的妹妹穿的比我還像新娘爽雄。我一直安慰自己,他們只是感情好挚瘟,可當(dāng)我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著本慕,像睡著了一般锅尘。 火紅的嫁衣襯著肌膚如雪布蔗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天顿乒,我揣著相機(jī)與錄音泽谨,去河邊找鬼。 笑死骨杂,一個胖子當(dāng)著我的面吹牛雄卷,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播妒潭,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼雳灾!你這毒婦竟也來了拂盯?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤团驱,失蹤者是張志新(化名)和其女友劉穎空凸,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體紊选,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了卖词。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片此蜈。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖东囚,靈堂內(nèi)的尸體忽然破棺而出战授,到底是詐尸還是另有隱情,我是刑警寧澤陈醒,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站肚逸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏膝晾。R本人自食惡果不足惜血当,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望禀忆。 院中可真熱鬧臊旭,春花似錦、人聲如沸箩退。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽戴涝。三九已至滋戳,卻和暖如春钻蔑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背奸鸯。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工咪笑, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人娄涩。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓窗怒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親钝满。 傳聞我的和親對象是個殘疾皇子兜粘,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容