0
我使用MySQL工作臺5.7MySQL的錯誤代碼:1265年數據截斷列 'prod_code' 在第7行
我有以下表中創建和存儲過程:
DROP TABLE MV_SALESBYMONTH;
CREATE TABLE MV_SALESBYMONTH
(
`time_year` int, `time_month` int, `prod_code` int,`sale_units` int, `sale_price` int);
DELIMITER $$
CREATE procedure `REFRESH_MV_SALESBYMONTH`() BEGIN
TRUNCATE TABLE `MV_SALESBYMONTH`;
INSERT INTO MV_SALESBYMONTH
(SELECT TIME_YEAR AS 'YEAR', TIME_MONTH AS 'MONTH', PROD_CODE AS 'PRODUCT',
SUM(SALE_UNITS) AS 'UNITS SOLD', SUM(SALE_UNITS*SALE_PRICE) AS 'SALES TOTAL'
FROM TIME T, SALES S
WHERE S.TIME_ID = T.TIME_ID
GROUP BY TIME_YEAR, TIME_MONTH, PROD_CODE);
END $$
DELIMITER ;
STEP 5:使用物化視圖
CALL REFRESH_MV_SALESBYMONTH();
SELECT * FROM MV_SALESBYMONTH;
當我嘗試運行語句:
CALL REFRESH_MV_SALESBYMONTH();
我得到錯誤1265:在第7行的列'prod_code'的數據被截斷
列sales.prod_code的數據類型是什麼? –
查看錶格:MV_SALESBYMONTH:prod_code是一個整數。 CREATE TABLE MV_SALESBYMONTH ( 'time_year' int,'time_month' int,'prod_code' int,'sale_units' int,'sale_price' int); – Smokey0101
'TIME T,SALES S'中的'PROD_CODE'是什麼類型? (使用表別名使得查詢更具可讀性。) – Rudie