当前位置:首页 » 编程语言 » javasql引号

javasql引号

发布时间: 2025-06-13 05:27:17

① 怎么加引号

不知道你用的是什么语言。
假设你用的是jsp、c#、java或其他c语系的语言

String sql = "";//in java or jsp(string sql = "";//in c#)
sql = "delete from book where time <"+"2005-1-1";

如果你用的是asp、vb等b语系
只要把“+”号改成“&”就可以了。

具体的你可以去看看相关教程里的字符串拼接。

② 一个字段多个字符串id 这样查那边没有把 每个id 用双引号包起来所以这样in查询查不到 请问怎么解决

一、我在批量删除中也遇到过这种问题,

1.之前我是这样解决的:

select * from A where ID in (${IDS})

若ID全都是int型(Number),把前端每个ID通过逗号,连接传过来是没问题的,

里面的ID若是字符串正如你所说,若还是这样连传进去(假设两个ID 为"ab" "cd")

就会变成:

select * from A where ID in ("ab,cd")

这样后台会报 ab is not a column 异常

2.然后我这样解决:

它里面缺"那就给它呗,在前端js就用","连起来

比如:

String IDS="";

String IDS = IDS +"""+ID+"""+",";这样每个ID都会有被"包裹了,然后处理下后面的逗号就OK

二、但这样是能解决的,但是用${}注入sql 是不安全的,最好是用#{},最后得用mybatis动态sql的 foreach方法。你可以自行网络

例子:

<delete id="delHosts" parameterType="java.util.List">
DELETE FROM A
<where>
ID IN
<foreach collection="list" item="item" separator=","
open="(" close=")" index="index">
#{item.ID}
</foreach>
</where>
</delete>

这个地方你传进来的 类型是什么 你的parameterType就得是什么类型,多尝试就好了

如果有帮助就点个赞吧,关注就更好了(●'◡'●)

③ oracle java.sql.SQLException: ORA-01756: 引号内的字符串没有正确结束

create or replace
PROCEDURE GETEMAILS
(
e_username VARCHAR2,
e_getemails OUT p_getemails.getemails
) AS

BEGIN
open e_getemails FOR select * FROM e_user where username<>e_username;
END GETEMAILS;

热点内容
python跨模块 发布:2025-07-30 23:04:43 浏览:300
阿泰编程 发布:2025-07-30 21:36:05 浏览:569
mybatis注解sqlif 发布:2025-07-30 21:33:59 浏览:572
安卓手机为什么削不短下巴 发布:2025-07-30 21:23:13 浏览:495
澳洲访问学者签证类型 发布:2025-07-30 20:55:12 浏览:354
svn切换服务器ip 发布:2025-07-30 20:43:10 浏览:198
汇通启富软件如何修改登录密码 发布:2025-07-30 20:41:08 浏览:243
公共场所的wifi密码名称是什么 发布:2025-07-30 20:19:56 浏览:636
ios系统怎么解压 发布:2025-07-30 20:14:05 浏览:740
sqlip 发布:2025-07-30 19:20:22 浏览:178