参考官方文档:
https://eco.dameng.com/document/dm/zh-cn/sql-dev/practice-func.html
Error -2007: 第 1 行, 第 117 列[ref]附近出现错误:
语法分析出错
解决方案:修改关键字即可
Error -2685: 第42 行附近出现错误:
试图在blob或者clob列上排序或比较
解决方案:需要将数据库参数ENABLE_BLOB_CMP_FLAG设置为1,
之后数据库便支持查询列,以及DISTINCT、ORDER BY、分析函数和集函数支持对大字段进行处理。
Error -2007: 第 32 行, 第 85 列[using]附近出现错误:
解决方案:
找到错误语句:convert(e.expert_name using gbk) asc
该功能是为了按照拼音首字母排序,
替换为 NLSSORT(e.expert_name,‘NLS_SORT = SCHINESE_PINYIN_M’)即可解决。
Error -2111: 第36 行附近出现错误:
无效的列名[topic]
解决方案:
字段名是小写的情况下,字段值必须使用单引号,因为双引号会把值当成列名。所以需要把双引号改为单引号,
如:and d.data_type=“topic” 改为 ‘topic’
Error -2723: 仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值
解决方案:
需要考虑是否分表,如果是分表,去掉表的自增;如果是普通单表,可以去掉自制定的主键值。
Error -2007: 第 4 行, 第 220 列[']附近出现错误:
语法分析出错
解决方案:查询列可以用双引号修饰,也可以不用引号修饰,但不能使用单引号,因为单引号是用来修饰字段值的
如b.notice_student_read_id AS ‘notice_read_id’ 必须改为 b.notice_student_read_id AS notice_read_id
Error -2007: 第 7 行, 第 99 列[7]附近出现错误:
语法分析出错
解决方案:
获取七天前的时间:date_sub(now(),interval 7 day ),
获取30分钟后的时间:date_add(NOW() ,INTERVAL 30 minute)
替换为 ADD_DAYS(GETDATE(), -7) ,sysdate + 30 / 24 / 60
Error -2207: 第24 行附近出现错误:
无法解析的成员访问表达式[group_concat]
解决方案:
group_concat(r.role_name)替换为 CONCAT (r.role_name,‘,’)
Error -2114: 第77 行附近出现错误:
重复的列名[invalid]
解决方案:去除多余的查询列 invalid 即可
Error -2007: 第 5 行, 第 128 列[10]附近出现错误:
语法分析出错
解决方案:
DATE_FORMAT(start_time, ‘%Y-%m-%d %H:%i’)
替换为 TO_CHAR(start_time, ‘YYYY-MM-DDHH24:MI’) 即可
解决方案:
DATEDIFF (now(), send_time) <= 60
替换为 sysdate - send_time <= 60
Error -2007: 第 7 行, 第 53 列["]附近出现错误:
语法分析出错
解决方案:
AND name LIKE “%”‘宁海’“%”
替换为 AND regexp_like(name,‘宁海’)