我想查詢我在本地機器上設置的postgres數據庫。查詢Postgres數據庫 - Clojure
我創建了一個文件
(ns website.db
(:require [clojure.java.jdbc :as jdbc]))
(def database
{:classname "com.postgres.jdbc.Driver"
:subprotocol "postgres"
:subname "mydb" ; In the guide this was //127.0.0.1:3306/mydb. Is the first part my computer IP address?
:user "admin"
:password "secret"})
如果我再嘗試查詢使用數據庫(在REPL)
(jdbc/query database ["SELECT * FROM table"])
我得到的錯誤ConnectException Connection refused java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java:-2)
注意我所期望的數據庫爲空,因爲我沒有在數據庫中輸入任何信息
定義數據庫時我犯了什麼錯誤?
要插入用戶這是正確的:
(defn register-user! [db name]
(jdbc/insert! db :user {:name name}))
據例如在GitHub上[github上]官方回購(https://github.com/clojure/java .dbdb#example-usage)你的數據庫定義應該像'(def pg-db {:dbtype「postgresql」 :dbname「mypgdatabase」 :host「mydb.server.com」 :user「myuser」 :密碼「secret」 :ssl true :sslfactory「org.postgresql.ssl.NonValidatingFactory」})' – wwajerowicz