今天在對錶數據插入的時候發生了警告。
# 原sql
INSERT INTO `person_data_pre` (USER_NAME,GENDER,PHONE,CAR_TYPE_NAME,BUY_TIME,BUY_CITY,JOP_NUM,MARK_TIME,PAYMENT,isNewCar,VOICE_URL,INSERT_TIME,UPDATE_TIME,STATUS)
SELECT USER_NAME,GENDER,PHONE,SERIES_NAME1,BUY_TIME,BUY_CITY,1011,MARK_TIME,PAYMENT,isNewCar,SELF_VOICE_URL,NOW(),NOW(),0
FROM `putdata_info` WHERE PUT_DATE=DATE_SUB(CURDATE(),INTERVAL 1 DAY) AND SERIES_NAME1 !='' AND DATA_TYPE=1
警告如下:
Warning Code : 1292 Truncated incorrect DOUBLE value: '111'
後來經過查詢發現是自己的數據格式寫的不對,DATA_TYPE
這個字段是varchar
類型的我用的是數字INT
類型的,修改之後就可以了。
# 修改後的sql
INSERT INTO `person_data_pre` (USER_NAME,GENDER,PHONE,CAR_TYPE_NAME,BUY_TIME,BUY_CITY,JOP_NUM,MARK_TIME,PAYMENT,isNewCar,VOICE_URL,INSERT_TIME,UPDATE_TIME,STATUS)
SELECT USER_NAME,GENDER,PHONE,SERIES_NAME1,BUY_TIME,BUY_CITY,1011,MARK_TIME,PAYMENT,isNewCar,SELF_VOICE_URL,NOW(),NOW(),0
FROM `putdata_info` WHERE PUT_DATE=DATE_SUB(CURDATE(),INTERVAL 1 DAY) AND SERIES_NAME1 !='' AND DATA_TYPE='1'