memo.log

技術情報の雑なメモ

ActiveRecord単体でSQLiteを使うメモ

確認環境

amzn2.x86_64 
ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x86_64-linux]
activerecord (7.0.5)
sqlite3 (1.6.3-x86_64-linux)
名前                : sqlite
アーキテクチャー    : i686
バージョン          : 3.7.17

インストール

SQLite

 % sudo yum install sqlite  

Ruby

 % cat Gemfile                                                                                                                               (git)-[main] 
# frozen_string_literal: true

source "https://rubygems.org"

gem "activerecord"
gem "sqlite3"

データベースの準備

% sqlite3 testdb 
sqlite> create table users(id integer, name text);
sqlite> insert into user values(1, 'a');
sqlite> insert into user values(2, 'b');

Rubyのコード

require 'active_record'

ActiveRecord::Base.establish_connection(
  adapter:   'sqlite3',
  database:  'testdb'
)

class User < ActiveRecord::Base
end

pp User.all

実行

 % be ruby active_record_test.rb
[#<User:0x00007f2f0e4ef2e8 id: 1, name: "a">, #<User:0x00007f2f0d90ed98 id: 2, name: "b">]