49 void Writable_Database::play_journal()
53 ready_to_write =
false;
55 ready_to_write =
true;
60 void Writable_Database::auto_upgrade()
65 if (file_schema_size < detail::schema_string_size)
67 journal.
comment(
"Automatic schema upgrade");
85 Writable_Database::Writable_Database
89 bool perform_initialization,
93 journal(file, check, commit_level)
97 if (perform_initialization)
102 Writable_Database::Writable_Database
114 void Writable_Database::check_single_row()
125 void Writable_Database::create_table(
const std::string &name)
138 void Writable_Database::add_field
142 const std::string &name,
148 if (table_id == Table_Id{1})
150 const auto field_id = ++storage_of_settings.current_field_id;
151 if (upgrading_schema)
153 if (field_id == Field_Id{1})
155 for (
const auto record: get_settings_table())
156 set_dark_mode(record, true);
158 if (field_id == Field_Id{2})
160 for (
const auto record: get_settings_table())
161 set_host(record,
"www.kayufu.com");
163 if (field_id == Field_Id{3})
165 for (
const auto record: get_settings_table())
166 set_user(record,
"joe");
int64_t get_size() const override
void play_until(Writable &writable, int64_t end)
void set_position(int64_t position)
int64_t get_checkpoint_position() const
void play_until_checkpoint(Writable &writable)
void timestamp(int64_t timestamp) final
void comment(const std::string &comment) final
static constexpr id_of_settings the_settings()
void create_table(const std::string &name) override
joedb::Writable_Journal schema_journal
void add_field(Table_Id table_id, const std::string &name, joedb::Type type) override
void timestamp(int64_t timestamp) override
joedb::Memory_File schema_file
Table_Id current_table_id
void comment(const std::string &comment) override
container_of_settings get_settings_table() const
A writable Database constructed from a writable joedb::Buffered_File.
void write_comment(const std::string &comment)
Automatically generated by joedbc.