NutzCN Logo
问答 Nutz给每列加入双引号
发布于 3132天前 作者 wangchao1241503759 1538 次浏览 复制 上一个帖子 下一个帖子
标签:

INSERT INTO "LLL"(sage,sname,sid) VALUES(?,?,?) '

由于数据库区分大小写,想给以上语句每列加上双引号如下:

INSERT INTO "LLL"("sage","sname","sid") VALUES(?,?,?) '

12 回复

自讨苦吃的想法啊

@wendal(wendal) 如果不加入的话,数据库插入时默认就是大写的,就没法插入了

哪个数据库的哪个版本自动变成大写列名了?

@wendal(wendal) 我在使用ibm data studio4 时,发现统计studio 提供的图形界面创建,并不能自动转换为大写,比如使用studio创建表时将字段定义为小写的name,这样再使用普通的SQL语句操作,例如:
insert into mytable(id,name) values(2,'kk')
这样就会出现错误:"NAME" 在使用它的上下文中无效。. SQLCODE=-206, SQLSTATE=42703, DRIVER=3.67.28
错误原因:因为查询是DB2自动将name字段转换为NAME去匹配,但数据表中的字段是小写的name,所以匹配不到 报错
解决办法:将上面sql改为insert into mytable(id,“name”) values(2,'kk'),即给小写name 加上“”

@wendal(wendal) Nutz有修改的地方么?想加上双引。。。

改 InsertByChainPItem 及其同package的几个类

@wendal(wendal) 只能改源码?有别的办法么?

@Column("\"xxxx\")

这样写

@wendal(wendal)
JSONArray insertResult = new JSONArray();//新增数据;

dao.fastInsert(insertResult);
现在数据是Json格式没法用@Column啊

那就拿JSONArray开刀咯, 遍历它, 生成一个新的map, 然后每个key都加上双引号.

@wendal(wendal) 假如我改了源码,每列都加上双引号,不会对其他数据库有影响么?

@wangchao1241503759 不确定,因为没测试过

上面提及的方式不行吗? 拿JSONArray开刀

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