MySQL迁移至DM8常见SQL兼容性问题

to_char或to_date函数替代DATE_FORMAT()函数

在MySQL中若使用到DATE_FORMAT()函数,可以在DM数据库中使用to_char或to_date函数改写。例如:

convert函数使用规则

在MySQL中convert()函数中value在前,type在后,DM数据库中相反,若使用convert()函数,请修改参数顺序。例如:

cast函数使用规则

DM中cast()用法与MySQL一致,但使用效果不同,例MySQL中对于数值类型的value转char类型没有限制,DM中则存在限制。可将cast(数值类型的value as char)转换为cast(数值类型的value as varchar),对于unsigned类型可以根据实际情况做对应改变或确定是否有必要进行转换。

DM中使用TIMESTAMPADD替代date_add函数

在MySQL中若采用date_add函数对添加时间间隔的表达式进行求值,可在DM中使用TIMESTAMPADD函数进行替代。例如:

interval关键字的使用

在MySQL中若使用类似interval 1 year的时间间隔表达式,在达梦数据库中,interval关键词后的正数需添加单引号,如interval '1' year,对于负数需改写,如interval '-1' year。