[解決済み] SQLiteのテーブル制約 - 複数の列で一意となる
2022-04-14 11:13:46
質問
SQLiteのサイトでこれに関する構文 "charts"が見つかりますが、例がなく、私のコードはクラッシュしてしまいます。1つのカラムにユニークな制約を持つ他のテーブルがありますが、2つのカラムに制約を追加したいのです。 これは、"syntax error"というメッセージを持つSQLiteExceptionを引き起こしているものです。
CREATE TABLE name (column defs)
UNIQUE (col_name1, col_name2) ON CONFLICT REPLACE
を元にやっています。
はっきり言って、私が提供したリンクのドキュメントには、次のように書かれています。
CONTSTRAINT name
は、制約定義の前に来る必要があります。
しかし、解決につながるかもしれないことは、私の括弧で囲まれた列定義の後に続くものは、デバッガーが文句を言うものであるということです。
もし私が
...last_column_name last_col_datatype) CONSTRAINT ...
というエラーが発生します。 CONSTRAINT" の近く: 構文エラー
もし私が
...last_column_name last_col_datatype) UNIQUE ...
というエラーが発生します。 UNIQUE" の近く: 構文エラー
解決方法は?
UNIQUE宣言をカラムの定義セクションに入れる;作業例。
CREATE TABLE a (
i INT,
j INT,
UNIQUE(i, j) ON CONFLICT REPLACE
);
関連
-
ubuntuでSQLite3を使うための基本コマンド
-
SQLite3の自己追加型主キーに関連する知識のまとめ
-
SQLiteインメモリデータベース学習マニュアル
-
SQLiteで自動番号付けされたカラムをリセットする方法
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] ATTACHで開いたSQLiteデータベースファイルのテーブルを一覧表示するにはどうすればよいですか?
-
[解決済み] SQLiteでテーブルが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] MySQLで複数のカラムに一意制約を指定するには?
-
[解決済み] Sqliteの複数カラムの主キー
-
[解決済み] SQLite - UPSERT *not* INSERT or REPLACE
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
SQLite の if not exist ライクな関数の実装
-
SQLiteチュートリアル(V): データベースとトランザクション
-
SQLiteの文字列比較における大文字小文字の問題の解決法
-
ubuntuでSQLite3を使うための基本コマンド
-
SQLiteデータベースのインストールと基本操作ガイド
-
SQLite3の自己追加型主キーに関連する知識のまとめ
-
SQLite3 用に ANSI から UTF8 への交換関数を提供する。
-
SQLiteチュートリアル(6)。式の説明
-
SQLiteチュートリアル(3)。データテーブルとビューの紹介
-
[解決済み] SqLiteで上位5レコードを取得する方法は?