Skip to content

Instantly share code, notes, and snippets.

@saboyutaka
Last active November 1, 2019 12:27
Show Gist options
  • Save saboyutaka/21ff1886833d76b38e81ec164b15a298 to your computer and use it in GitHub Desktop.
Save saboyutaka/21ff1886833d76b38e81ec164b15a298 to your computer and use it in GitHub Desktop.
RubyからSQLを実行する課題の答え
require 'pg'
# macの方 userを自分の名前(whoamiで出た名前)に変更する
client = PG::connect(
:host => "localhost",
:user => 'xxxxxxxxxx',
:password => '',
:dbname => "myapp")
# Windowsの方
client = PG::connect(
:host => "localhost",
:user => 'lagoon',
:password => 'pass',
:dbname => "myapp")
# INSERT
name = 'inafuku'
email = 'inafuku@gmail.com'
password = 'inafuku'
sql = "INSERT INTO users (name, email, password) VALUES ('#{name}', '#{email}','#{password}');"
# SQL実行
client.exec_params(sql)
# 追加されていることを確認する
sql = "SELECT * FROM users"
puts client.exec_params(sql).to_a
# UPDATE
# UPDATEを実行する
new_name = 'inaina'
new_email = 'inaina@mail.com'
sql = "UPDATE users SET name = '#{new_name}', email = '#{new_email}' WHERE name = '#{name}';"
client.exec_params(sql)
# 更新されていることを確認する
sql = "SELECT * FROM users"
puts client.exec_params(sql).to_a
# DELETE
# DELETEを実行する
name = 'inaina'
sql = "DELETE FROM users WHERE name = '#{name}';"
client.exec_params(sql)
# 削除したユーザーが居ないことを確認する
sql = "SELECT * FROM users"
puts client.exec_params(sql).to_a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment