私は呼び出し/バグ追跡スクリプトに取り組んでおり、問題ごとに一意の追跡 ID を生成する際のベスト プラクティスは何ですか。
- mysql でインデックスを使用するのが最善ですか
- 使用できる別の形式はありますか
- 表示形式の処理方法を教えてください。6 (345789) 桁の数字を表示したいのですが。
- 6 桁を超えた場合、最初からやり直す方法、またはこれを処理する方法を教えてください。
- または、新しいフィールドを作成して数値を生成するのが最善ですか?
提案???
ありがとう
私は呼び出し/バグ追跡スクリプトに取り組んでおり、問題ごとに一意の追跡 ID を生成する際のベスト プラクティスは何ですか。
提案???
ありがとう
6 桁の数字をすべて使用する場合、900,000 レコード未満にする必要があります。そうしないと、一意の値が不足します。より多くの桁数を使用するか、データ型を varchar に変更して英数字の値を許可する以外に、これを回避する方法はありません。900,000 件のレコードが存在しないと思われる場合は、mysql の自動インクリメント列を使用しますが、最初の 6 桁の数字 (100000) から始まるようにシーケンスを設定します。このようなテーブルを作成します...
CREATE TABLE bugs
(
tracking_id INT UNSIGNED NOT NULL AUTO_INCREMENT = 100000,
...
)
したがって、レコードを作成するときに生成される最初の tracking_id は 100000 になり、次に 100001 というようになります。ただし、899,999 を超えるレコード (999,999 を超える) を挿入すると、桁数は 7 に増えます。