最近、淘宝網 API を開発していたときに、淘宝網の注文番号に遭遇しました。これは、淘宝網データベースから取得され、科学表記法で表されています: 3.09086009604219E+14。 11 桁、すべて varchar にされますが、後で Taobao API を使用するときは、明示的に整数の順序番号を使用する必要があります。どうすれば MySQL にこのような大きな整数を格納できますか? ? ? ? ? ?
ひざまずいて懇願してください。 。 。 。 。 。 。
bigint
MySQL データ型 bigint は、データベースに渡す前にデータを処理する必要がありますか? 。それとも 3.09086009604219E+14 を直接渡しますか? ? ? E+14という文字列は正常に認識できるでしょうか? ? ? ? bigint
は絶対に不可能です。科学的表記法は精度が失われています
ので、文字列としてのみ保存できます
読み方はわかりませんが、少なくともライブラリに科学的表記法で保存することは不可能です
これは、データベースのフィールド タイプを設計して挿入するだけです。
皆さん、ありがとうございます。淘宝網の注文番号は整数ではなく文字列であることがわかりました。 。文書内の注文番号の種類に書かれている数字を見て、整数だと思い、長い間エラーをテストした後、文書に書かれている数字を数値列を参照していると見ました。 。なんという詐欺だ。 。
皆さん、ポイントを貯めてください。 。
$tid = sprintf("%.0f",$trade->tid);
先ほど実行しました。これで問題ありません。みんなもコピーしてね