1

いくつかのトランザクションデータを処理していて、主キーフィールドに問題があります。Order ManagerシステムとGoogleアナリティクスからデータをインポートする場合、OrderIDフィールドには次の2つの値の形式があります。

123456  
002-0130775-1483424

このフィールドを主キーとしてフォーマットするにはどうすればよいですか?

よろしくお願いします!:)

(MySQL 5.5.27の実行)

4

4 に答える 4

3

任意の整数(「内部」キー)を含む自動インクリメントの主キーフィールドを作成する必要があります...実際の「キー」データをOrderNumberなどのタイトルの別のフィールドに入れて、一意のインデックスを付けることができます。

于 2012-11-09T14:15:39.003 に答える
2

オプションとして、合成主キー(内部参照のみ)とインデックス付きCHAR(20)列(おそらく一貫性を保つために一意のインデックスが付加されている)を設定できます。これは、ある日、より良い解決策のようです。既存のデータと衝突する可能性のある別のシステムと統合したい場合があります。

于 2012-11-09T14:17:22.170 に答える
2

はい、主キーを内部に保持することで、変更を防ぐことができます。データとして公開される可能性のあるものはすべて、キーとして再検討する必要があります。

于 2012-11-09T14:18:49.123 に答える
0

ほら、主キーは本質的にbigintである必要がありますが、必要に応じて変更できます。 MYSQL 5.5.27には、以前のバージョンからいくつかの重要な変更があります。リンク https://dev.mysql.com/doc/refman/5.5/en/news-5-5-27.htmlをたどってください。

于 2012-11-09T14:17:17.677 に答える