2015-07-05 17:17:03 -04:00
|
|
|
module ImportScripts::PhpBB3
|
|
|
|
class DatabaseBase
|
|
|
|
# @param database_client [Mysql2::Client]
|
|
|
|
# @param database_settings [ImportScripts::PhpBB3::DatabaseSettings]
|
|
|
|
def initialize(database_client, database_settings)
|
|
|
|
@database_client = database_client
|
|
|
|
|
|
|
|
@batch_size = database_settings.batch_size
|
|
|
|
@table_prefix = database_settings.table_prefix
|
|
|
|
end
|
|
|
|
|
|
|
|
protected
|
|
|
|
|
|
|
|
# Executes a database query.
|
|
|
|
def query(sql)
|
2015-09-30 11:56:37 -04:00
|
|
|
@database_client.query(sql, cache_rows: true, symbolize_keys: true)
|
2015-07-05 17:17:03 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
# Executes a database query and returns the value of the 'count' column.
|
|
|
|
def count(sql)
|
|
|
|
query(sql).first[:count]
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|