Skip to content

Instantly share code, notes, and snippets.

@hiroism007
Last active December 18, 2015 05:29
Show Gist options
  • Save hiroism007/5733430 to your computer and use it in GitHub Desktop.
Save hiroism007/5733430 to your computer and use it in GitHub Desktop.
dammyデータを作るRubyScript
class CreateDammies
require "rubygems"
require "mysql2"
def initialize(host = "localhost", username = "root", password = "", database = "nicomon")
@client = Mysql2::Client.new(host: host, username: username, password: "", database: database)
end
def create_user(numbers)
numbers.times do |index|
name = "test_user" + (index + 1).to_s
passwd = "passwd" + (index + 1).to_s
@client.query("INSERT INTO user (name, passwd) VALUES ('#{name}','#{passwd}')");
end
end
def create_badge(numbers)
numbers.times do |index|
name = "test_badge" + (index + 1).to_s
text = "text" + (index + 1).to_s
@client.query("INSERT INTO badge (name, text) VALUES ('#{name}','#{text}')");
end
end
def create_monster(numbers)
numbers.times do |index|
name = "test_name_ja" + (index + 1).to_s
name_en = "test_name_en" + (index + 1).to_s
max_lv = (index + 11).to_s
min_lv = (index + 1).to_s
static_param = index + 1
@client.query("INSERT INTO monster(name, name_en, max_lv, min_lv, static_param) VALUES ('#{name}','#{name_en}','#{max_lv}','#{min_lv}','#{static_param}')");
end
end
def create_category(numbers)
numbers.times do |index|
name = "test_name" + (index + 1).to_s
@client.query("INSERT INTO category (name) VALUES ('#{name}')")
end
end
def create_project(numbers)
numbers.times do |index|
user_id = index + 1
#いまだけ+5です。カテゴリーDBが5から始まるので。普通は1
category_id = index + 5
name = "category " + (index+1).to_s
comment_date = "2013-06-08 00:49:36"
iine_count = index
comment_count = index + 10
@client.query("INSERT INTO project(user_id, category_id, name, comment_date, iine_count, comment_count) VALUES ('#{user_id}','#{category_id}','#{name}','#{comment_date}','#{iine_count}','#{comment_count}') ");
end
end
def create_source(numbers)
numbers.times do |index|
#いまだけ+90です。projectのDBが90か始まるので。普通は1
project_id = index + 90
name = "test_source" + (index + 1).to_s
@client.query("INSERT INTO source (project_id, name) VALUES ('#{project_id}','#{name}')")
end
end
def create_comment(numbers)
numbers.times do |index|
user_id = index +1
#いまだけ+295です。sourceのDBが295から始まるので。普通は1
source_id = index + 295
nice_count = index + 10
@client.query("INSERT INTO comment (user_id, source_id, nice_count) VALUES ('#{user_id}', '#{source_id}', '#{nice_count}')")
end
end
def create_nice(numbers)
numbers.times do |index|
user_id = index + 1;
#いまだけ+54515です。コメントのDBが54515から始まるので。普通は1
comment_id = index + 54515;
@client.query("INSERT INTO nice (user_id, comment_id) VALUES ('#{user_id}', '#{comment_id}')")
end
end
def create_battle(numbers)
numbers.times do |index|
winner_id = index + 1
loser_id = 100 - index
@client.query("INSERT INTO battle (winner_id, loser_id) VALUES ('#{winner_id}', '#{loser_id}')")
end
end
def create_collect_badge(numbers)
numbers.times do |index|
user_id = +1
badge_id = get_random_number(100)
@client.query("INSERT INTO collect_badge (user_id, badge_id) VALUES ('#{user_id}', '#{badge_id}')")
end
end
def create_collect_monster(numbers)
numbers.times do |index|
user_id = index +1
monster_id = get_random_number(100)
@client.query("INSERT INTO collect_monster (user_id, monster_id) VALUES ('#{user_id}', '#{monster_id}')")
end
end
def create_monster_user(numbers)
numbers.times do |index|
user_id = index +1
monster_id = get_random_number(100)
@client.query("INSERT INTO monster_user (user_id, monster_id) VALUES ('#{user_id}', '#{monster_id}')")
end
end
private
def get_random_number(num)
rand(num) + 1
end
end
client = CreateDammies.new();
numbers = 100
client.create_user(numbers)
client.create_badge(numbers)
client.create_monster(numbers)
client.create_category(numbers)
client.create_project(numbers)
client.create_source(numbers)
client.create_comment(numbers)
client.create_nice(numbers)
client.create_battle(50)
client.create_collect_badge(100)
client.create_collect_monster(100)
client.create_monster_user(100)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment