在Ruby中创建和访问Postgres(不带Rails)

时间:2015-07-13 06:09:39

标签: ruby postgresql

我正在尝试编写一个简单的Ruby脚本,它将在Postgresql数据库中存储字符串和整数。以下是我希望它如何工作:

require 'pg'
# if database 'Words' exists
#    name = 'Bud'
#    score = 99
#    replace String1 with 'Bud' and Integer1 with 99 if score > Integer1
# else
#    CREATE database 'Words'
#    INSERT INTO Words (String1, Integer1)
#    VALUES ('Dave', 30)
# end

我想基本上像访问一个简单的数组或哈希一样访问这个数据库。我想使用Postgres而不是YAML文件的原因是因为YAML文件不会在免费的heroku帐户上保留。

1 个答案:

答案 0 :(得分:0)

您可以这样做:

# Connect to the template1 db (built in)
conn_template1 = PG.connect( dbname: 'template1' )
res1 = conn.exec('SELECT * from pg_database where datname = $1', ['words'])
if res1.ntuples == 1 # db exists
  conn_words = PG.connect(dbname: 'words')
  # ... do stuff to your DB
  conn_words.exec('INSERT INTO words ....')
else
  conn.exec('CREATE DATABASE words')
end

希望有所帮助!