5ca28cfb19
;10u
26 lines
499 B
Go
26 lines
499 B
Go
package main
|
|
|
|
import (
|
|
"database/sql"
|
|
)
|
|
|
|
func RunMigrations(db *sql.DB) error {
|
|
// Load the cr-sqlite extension
|
|
_, err := db.Exec("SELECT load_extension('crsqlite.so')")
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
// Create the todos table and initialize it as a CRDT
|
|
_, err = db.Exec(`
|
|
CREATE TABLE IF NOT EXISTS todos (id INTEGER PRIMARY KEY, content TEXT);
|
|
SELECT crsql_as_crr('todos');
|
|
`)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|