CAST 和 CONVERT函数应该注意的问题。
手册中的信息:
1)、CONVERT()一般可用于比较出现在不同字符集中的字符串。
具体参数:
* CAST(expr AS type), CONVERT(expr,type) , CONVERT(expr USING transcoding_name)
2)、CAST() 和CONVERT() 函数还可用来获取一个类型的值,并产生另一个类型的值。
这个类型 可以是以下值其中的 一个:
o BINARY[(N)] o CHAR[(N)] o DATE o DATETIME o DECIMAL o SIGNED [INTEGER] o TIME o UNSIGNED [INTEGER] 所以这样的转化是错误的:
declare str char(40);
set str = 'This is a test string.';
select cast(str as varchar(40));
|
所以大家在设计MYSQL表的时候记得该用VARCHAR的时候不要用CHAR.因为以后想改类型的时候就不允许了,而只能重新定义表然后导入数据。
阅读(3581) | 评论(0) | 转发(0) |