39 lines
1.1 KiB
Go
39 lines
1.1 KiB
Go
package common
|
|
|
|
import (
|
|
"zombiezen.com/go/sqlite"
|
|
"zombiezen.com/go/sqlite/sqlitex"
|
|
)
|
|
|
|
// Represents a log message entry from the game.
|
|
type LogMessage struct {
|
|
ID int64 `db:"id"`
|
|
LogTime int32 `db:"log_time"`
|
|
LogType string `db:"log_type"`
|
|
Message string `db:"message"`
|
|
Account string `db:"account"`
|
|
ClientDataVersion int32 `db:"client_data_version"`
|
|
LogEntryArchived bool `db:"log_entry_archived"`
|
|
Type *string `db:"type"`
|
|
Name string `db:"name"`
|
|
Version *string `db:"version"`
|
|
}
|
|
|
|
// Creates a new log message table in the database.
|
|
func CreateLogMessagesTable(conn *sqlite.Conn) error {
|
|
return sqlitex.ExecScript(conn, `
|
|
CREATE TABLE IF NOT EXISTS log_messages (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
log_time INTEGER NOT NULL DEFAULT 0,
|
|
log_type TEXT NOT NULL DEFAULT '',
|
|
message TEXT NOT NULL,
|
|
account TEXT NOT NULL DEFAULT '',
|
|
client_data_version INTEGER NOT NULL DEFAULT 0,
|
|
log_entry_archived INTEGER NOT NULL DEFAULT 0,
|
|
type TEXT DEFAULT NULL,
|
|
name TEXT NOT NULL,
|
|
version TEXT DEFAULT NULL
|
|
);
|
|
`)
|
|
}
|