テキストファイルからmysql-5.5のテーブルにデータをインポートしようとしています。テーブル作成コードは次のとおりです。
CREATE TABLE `price` (
`symbol` VARCHAR(20) NOT NULL,
`date` DATE NOT NULL,
`open` DOUBLE NULL DEFAULT NULL,
`high` DOUBLE NULL DEFAULT NULL,
`low` DOUBLE NULL DEFAULT NULL,
`close` DOUBLE NULL DEFAULT NULL,
`volume` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
PRIMARY KEY (`date`, `symbol`)
)
ENGINE=InnoDB
;
これがインポートコードです。
INFILE 'c:/temp/DTB3.csv'
INTO TABLE price
FIELDS TERMINATED BY ','
(symbol, date, @dummy, @dummy, close);
これがデータのいくつかの行です。
10,2019-01-30,1.00,1.00,50459.4301
10,2019-01-31,1.00,1.00,50477.9307
10,2019-02-01,1.00,1.00,50496.4382
警告の例を次に示します。
Warning 1,265 Data truncated for column 'close' at row 12
結果のテーブルのデータは正しいように見えます。
価格フィールドでdoubleとfloatの両方を試しました。
なぜこれらの警告が表示されるのですか?また、それらに対して何ができますか?
他の誰かがこの問題に遭遇した場合に備えて、クエリを修正して追加します。LINESTERMINATED BY '\ r \ n'は警告を停止しました。どうやらMySQLはインポート時にキャリッジリターンをクローズフィールドに追加しようとしていたようです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加