NutzCN Logo
问答 dao.execute(Sqls.create(sql));info日志报错
发布于 2735天前 作者 qq_a42f26f3 2000 次浏览 复制 上一个帖子 下一个帖子
标签:

dao.execute(Sqls.create(sql));
sql如下:
REPLACE INTO tsg_shop_goods_wareh (
wareh_id,
prod_id,
prod_code,
stk_available
) SELECT
wareh_id,
prod_id,
prod_code,
stk_available
FROM
tsg_shop_goods_wareh_tmp
报错如下:
[2017-06-27 16:17:25,451][offline_tsg_Scheduler_Worker-15]org.nutz.dao.impl.sql.run.NutDaoExecutor.exec(NutDaoExecutor.java:82)Can't identify SQL type
: REPLACE INTO tsg_shop_goods_wareh (
wareh_id,
prod_id,
prod_code,
stk_available
) SELECT
wareh_id,
prod_id,
prod_code,
stk_available
FROM
tsg_shop_goods_wareh_tmp

执行是成功了,要怎么把这个错误去掉。

5 回复

只是个log啦,不算报错

能否去掉该log信息,看源代码是如下地方,但是我没地方设置类型进去,不知道是不是自动根据sql头部算出的。
switch (st.getSqlType()) {
// 查询
case SELECT:
_runSelect(conn, st);
break;
// 创建 & 删除 & 修改 & 清空
case ALTER:
case TRUNCATE:
case CREATE:
case DROP:
_runStatement(conn, st);
break;
// 仅仅是运行回调
case RUN:
st.onAfter(conn, null, null);
break;
case CALL:
case EXEC:
_runExec(conn, st);
break;
// 插入 & 删除 & 更新
// case DELETE:
// case UPDATE:
// case INSERT:
// 见鬼了,未知类型,也当作普通 SQL 运行吧,见 Issue#13
default:
if (st.isForceExecQuery()) {
// run as select
_runSelect(conn, st);
break;
}
if (st.getSqlType() == SqlType.OTHER && log.isInfoEnabled())
log.info("Can't identify SQL type : " + st);
paramMatrix = st.getParamMatrix();
// 木有参数,直接运行
if (null == paramMatrix || paramMatrix.length == 0) {
_runStatement(conn, st);
}
// 有参数,用缓冲语句
else {
_runPreparedStatement(conn, st, paramMatrix);
}
}

类是NutDaoExecutor

如果是最新版的话,有sql.setSqlType,你喵喵吧

添加回复
请先登陆
回到顶部