[解決済み】複合主キーの正しい作成方法 - MYSQL
2022-04-10 07:52:09
質問
以下は、私が取り組んでいる強烈なセットアップの総体的な過度の簡略化です。
table_1
と
table_2
はどちらもIDとしてオートインクリメントのサロゲート主キーを持っています。
info
は、両者の情報を含むテーブルで
table_1
と
table_2
.
table_1 (id, field)
table_2 (id, field, field)
info ( ???, field)
の主キーにするかどうかを決めようとしています。
info
のIDを合成したものです。
table_1
と
table_2
. もし私がこれをやるとしたら、どれが最も理にかなっているでしょうか?
(この例では、ID 11209とID 437を組み合わせています。)
INT(9)
11209437
(なぜこれが悪いかは想像がつく)
VARCHAR (10)
11209-437
DECIMAL (10,4)
11209.437
それとも他に何か?
これをMYSQLのMYISAM DBの主キーとして使っても問題ないでしょうか?
どのように解決するのですか?
コンポジット(マルチカラム)キーを使いたいのですが。
CREATE TABLE INFO (
t1ID INT,
t2ID INT,
PRIMARY KEY (t1ID, t2ID)
)
この方法では、t1ID と t2ID をそれぞれのテーブルを指す外部キーとして持つことができます。
関連
-
[解決済み】autoカラムは1つしか存在できない
-
[解決済み】MAMPのmysqlサーバーが起動しない。mysqlのプロセスが起動していない
-
[解決済み] エラー 1115 (42000)。不明な文字セットです。'utf8mb4'
-
[解決済み] mysqldです。dir を data に変更できません。サーバーが起動しません
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLのクエリ結果をCSV形式で出力するにはどうすればよいですか?
-
[解決済み] MySQLで'insert if not exists'を行うにはどうしたらいいですか?
-
[解決済み] MySQLで複数のカラムに一意制約を指定するには?
-
[解決済み] SQL - 多対多のテーブルの主キー
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラーコード1292 - 不正なDOUBLE値の切り捨て - Mysql
-
[解決済み】MySQLユーザーDBにパスワードカラムがない - OSXへのMySQLインストール
-
[解決済み】MySQLのforeachループ
-
[解決済み】MySQL エラー #1133 - ユーザー テーブルに一致する行が見つかりません。
-
[解決済み] MySQLの グループ関数の無効な使用
-
[解決済み] MySQL エラー: キーの長さがないキー指定
-
[解決済み] MySQL エラー 1093 - FROM 句で更新のターゲット テーブルを指定できません。
-
[解決済み] 「他のデータベースへのクエリを無視する」コマンドライン
-
[解決済み] MySQL Workbenchが「このサーバーバージョンでは、この位置は無効です」というエラーを報告する。
-
[解決済み] MySQLから最後のN行を選択する