java jdbc 插入数据时 数据中存在问号 50
程序中insert时有条数据values的值中存在问号,jdbc对存在这种字符进行处理时会报102参数未定义,应该怎么解决,如:insertintoisso.hfcs(n...
程序中insert时有条数据 values的值中存在问号,jdbc对存在这种字符进行处理时会报102参数未定义,应该怎么解决,如:
insert into isso.hfcs
(name,xb,sf)
values
('测?试1','1','摸金?校尉');
这句话在pl/sql执行时没有问题的,问号可以被插入,但是放在放在程序中执行,问号会被默认当做通配符,有没有转换方式 展开
insert into isso.hfcs
(name,xb,sf)
values
('测?试1','1','摸金?校尉');
这句话在pl/sql执行时没有问题的,问号可以被插入,但是放在放在程序中执行,问号会被默认当做通配符,有没有转换方式 展开
7个回答
展开全部
转移处理。insert into isso.hfcs
(name,xb,sf)
values
('测\?试1','1','摸金\?校尉');
就可以了
(name,xb,sf)
values
('测\?试1','1','摸金\?校尉');
就可以了
更多追问追答
追问
试了 不管用 还是报相同的错误
追答
你说放到程序中?拼接的字符串吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在对SQL进行预处理的时候,使用通配符“?”来代替字段的值,例如:
sql = con.prepareStatement("delete * from chengjibiao where number=?")
在执行之前,需要调用sql方法设置通配符所代表的具体值:
void setString(int index,String x)
index 代表通配符的序号;x代表该通配符所代表的具体值
sql = con.prepareStatement("delete * from chengjibiao where number=?")
在执行之前,需要调用sql方法设置通配符所代表的具体值:
void setString(int index,String x)
index 代表通配符的序号;x代表该通配符所代表的具体值
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'测'+'?'+...试试看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
转义不行吗~不行的话是不是要用char~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个像是插入数据的编码不对啊.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询