簡體   English   中英

MySQL將列數據類型從VARCHAR轉換為INT

[英]MySQL convert column datatype from VARCHAR to INT

我有一個帶有VARCHAR(25)列的MySQL表,我希望將其轉換為INT。 列中的所有數據都是整數或空白。 我試過這個命令:

ALTER TABLE ip MODIFY isp INT UNSIGNED NOT NULL;

不幸的是,由於某些現有行是空的,我收到此錯誤:

ERROR 1366 (HY000): Incorrect integer value: '' for column 'isp' at row 2

謝謝你的幫助。

在更改表格之前,請嘗試更新您的值。

目標是在您具有空值(不能轉換為int)的字段中設置“0”值

update ip
set isp = '0' where trim(coalesce(isp, '')) = '';

如果isp不可為空,則可以刪除coalesce函數。

update ip 
set isp = '0' where trim(isp) = '';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM