Class: DBUniversity
- Inherits:
-
Object
- Object
- DBUniversity
- Defined in:
- lib/source/DBUniversity.rb
Class Method Summary collapse
-
.instance ⇒ Object
Метод, возвращает ЕДИНСТВЕННЫЙ экземпляр класса DBUniversity.
Instance Method Summary collapse
-
#initialize ⇒ DBUniversity
constructor
Инициализируем объект, открывая БД и настраивая её на возвращение результатов в виде хешей.
-
#prepare_exec(statement, *params) ⇒ Object
Методы, принимают SQL-запрос (и параметры), возвращает результаты запроса.
- #query(statement) ⇒ Object
Constructor Details
#initialize ⇒ DBUniversity
Инициализируем объект, открывая БД и настраивая её на возвращение результатов в виде хешей
9 10 11 12 |
# File 'lib/source/DBUniversity.rb', line 9 def initialize @client = SQLite3::Database.open 'C:\Users\valen\RubymineProjects\untitled\identifier.sqlite' @client.results_as_hash = true end |
Class Method Details
.instance ⇒ Object
Метод, возвращает ЕДИНСТВЕННЫЙ экземпляр класса DBUniversity.
16 17 18 19 20 21 22 23 24 |
# File 'lib/source/DBUniversity.rb', line 16 def self.instance return @instance if @instance # Иначе захватываем мьютекс, чтобы ТОЛЬКО ОДИН поток мог создать экземпляр класса. @instance_mutex.synchronize do @instance ||= new end @instance end |
Instance Method Details
#prepare_exec(statement, *params) ⇒ Object
Методы, принимают SQL-запрос (и параметры), возвращает результаты запроса.
27 28 29 |
# File 'lib/source/DBUniversity.rb', line 27 def prepare_exec(statement, *params) @client.prepare(statement).execute(*params) end |
#query(statement) ⇒ Object
31 32 33 |
# File 'lib/source/DBUniversity.rb', line 31 def query(statement) @client.query(statement) end |