error table [name] has no column [column]

2020-01-31

GoでsqliteにデータをInsertしようとしてエラー。

$ error table Balance has no column named price

Insertしているコードを見ても問題はない。

カラムを確認すると……
2個目のカラムがおかしい。

$ sqlite3 ./some_db_file_name.sql
$ PRAGMA table_info(Balance);
0|time|DATETIME|1||1
1|rate|FLOAT|0||0
2|half|FLOAT
        price FLOAT|0||0
3|total|FLOAT|0||0

CREATE TABLEを確認するとtypoでした。

c := fmt.Sprintf(`
CREATE TABLE IF NOT EXISTS %s (
	time DATETIME PRIMARY KEY NOT NULL,
	rate FLOAT,
	half FLOAT
	price FLOAT,
	total FLOAT)`, Balance)
DbConnection.Exec(c)