[解決済み] MySQLにUUID v4を格納する
2022-03-02 04:01:24
質問
PHPでUUIDを生成しているのですが、以下のような関数が見つかりました。 ここで
さて、私はそれをMySQLデータベースに格納したいと思います。 UUID v4 を格納するための最良の/最も効率的な MySQL フィールドフォーマットは何ですか?
現在、varchar(256)を使用していますが、必要以上に大きいことは確かです。 私は多くのほぼ答えを見つけましたが、それらは一般的にUUIDのどの形式を参照しているのか曖昧なので、私は具体的な形式を尋ねています。
どのように解決するのですか?
として格納します。
VARCHAR(36)
正確にフィットさせたい場合は
VARCHAR(255)
どうせ同じストレージコストで済むのだから。バイト数で騒ぐ必要はないのです。
覚える
VARCHAR
フィールドは
可変長
そのため、ストレージのコストは、実際にどれだけのデータが格納されているかに比例し、どれだけのデータが格納されうるかには比例しない。
として格納する。
BINARY
は非常に厄介で、値は印刷できず、クエリを実行したときにゴミとして表示されることがあります。リテラルなバイナリ表現を使用する理由はほとんどありません。人間が読める値であれば、コピーペーストして簡単に操作することができます。
Postgresのような他のプラットフォームでは、適切なUUIDカラムがあり、内部的にはよりコンパクトなフォーマットで保存されますが、人間が読めるように表示されるので、両方のアプローチの長所を得ることができます。
関連
-
[解決済み】mysqladmin: 'localhost'でのサーバーへの接続に失敗しました。
-
[解決済み] mysql.pluginテーブルを開くことができません。mysql_upgradeを実行し、作成してください。
-
[解決済み] テーブルのストレージエンジンは修復をサポートしていません。InnoDB または MyISAM?
-
[解決済み] GUID / UUIDの作成方法
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] GUIDとUUIDの違いは何ですか?
-
[解決済み] PythonでGUID/UUIDを作成する方法
-
[解決済み】UUIDはどのようにユニークなのですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】MySQL: グループ関数の無効な使用
-
[解決済み】autoカラムは1つしか存在できない
-
[解決済み】MySQLエラー#1071 - 指定されたキーが長すぎる; キーの最大長は767バイトです。
-
[解決済み】MySQLの「ロックを取得しようとしたときにデッドロックが見つかりました。トランザクションを再起動してみてください」を回避する方法
-
[解決済み】MySQLを使用してランダムでユニークな8文字の文字列を生成する方法
-
[解決済み】MySQL エラー #1133 - ユーザー テーブルに一致する行が見つかりません。
-
[解決済み] MySQL エラー 1093 - FROM 句で更新のターゲット テーブルを指定できません。
-
[解決済み] エラーコードです。1215. 外部キー制約を追加できません (外部キー)
-
[解決済み] MySQLから最後のN行を選択する
-
[解決済み】v4 UUIDを生成するPHP関数