导航:首页 > 编程语言 > javasql拼接

javasql拼接

发布时间:2022-09-18 06:42:55

⑴ 求帮忙一个java的sql语句拼接,条件是 in 包括!

//不知道你usr_id怎么传入,现假设ids=[101,102]
Stringsql="select*fromusr_infouwhereu.usr_idin("
StringBuildersd=newStringBuilder(sql);
for(inti=0;i<ids.length();i++){
//实际操作,就是添加"'101‘,"
sb.append("'").append(ids[i]).append("',");
}
sb.deleteAt(sb.length-1);//删除最后一个逗号

sb.append(");");

System.out.print(sb.toString());

⑵ JAVA jdbc 里 拼接 sql 的时候 直接用 ++ 拼接上值还是 用 = 那个拼接啊

不谈安全的话,使用StringBuffer对象拼接sql效率更高一点。但是如果使用字符串拼接的形式会造成sql注入的问题。因此尽量使用PrepareStatement来预处理sql,即使用=?的sql语句。
sql注入:
假设你想查询的sql如下:
String sql="select * from user_infor where username='123' and pwd= ",且理论上你想要拼接 "'password'"。那么如果拼接错了密码sql就不会返回想要的结果,但是如果拼接"'wrongPassword' or 1=1 " ,sql语句也会执行成功的。

⑶ 关于java中拼接sql,表名作为参数,返回结果集怎么接 [问题点数:30分]

通常通过SQL查询语句查出来的结果集封装在ResultSet对象中,然后我们会这样处理:
把ResultSet对象中的数据取出来并封装在javabean中,所以我们需要这样写(我假设这里的javabean是Student.java 里面有private String name和private int id两个属性 ,当然你需要生成对应的getter和setter方法)
while(rs.next()){
Student s=new Student();
s.setName(rs.getString("name"));
s.setId(rs.getInt("id"));
return s;
}

这样就把相应的数据封装进javabean对象中了,当然还有一种简便的方法是用Apache开源组织的dbUtils工具 详看API 这个太多不好说

⑷ Java动态sql语句拼接

Map<String,Boolean> map = new HashMap<String,Boolean>();

Set<Entry<String, Boolean>> ens = map.entrySet();
StringBuilder sb = new StringBuilder();
if(ens != null && ens.size() > 0){
for(Entry<String, Boolean> en: ens){
if(en.getValue()){
sb.append("'").append(en.getKey()).append("',");
}
}
}
String names = sb.toString();
if(names.length() > 0){
names = names.substring(0, names.length()-1);//去掉最后一个逗号
String sql = "select * from stuent t1 where t1.name in("+names+")";
System.out.println(sql);
}else{
System.out.println("没有及格的学生");
}

⑸ java 如何在sql里用一个逗号拼接的字符串与数据库里的值做对比

逗号分隔字符串的数量可以通过 sql 中的一个自定义函数来计算: 参见: dropfunction search dhgo createf unction search (@strvarchar (max) comback int -- 设置返回值为 begindeclare@resultint -- 返回逗号 declare@jintset result = 0set@j = 1while@j

⑹ java中SQL拼接的问题

//既然你说有可能不拼接,直接不拼接是无法实现的可以换一种思路,就是全部查询,比如,你不想加proviceCd=”“的判断,可以让他全部查询出来,因为不加条件就是全盘检查,使用模糊查询,让条件 like ‘%’ ,”%“代表任意长度任意字符,所以都符合条件,不会排除任何一个其他项目。希望这个思路能帮到你,如果不行我也没办法了。
String sql = select * from intern t WHERE name like '?' and institute like '? 'and gender like '?' and majorCd like '?' and provinceCd like '?';

PreparedStatement pstmt = null;
int status = -1;
try {
pstmt = conn.prepareStatement(sql);
if(name==null)
{
pstmt.setString(1, %);
}
else
{
pstmt.setString(1, name);
}
/*
其他条件判断,
*/
status = pstmt.executeUpdate();
if (status > 0) {
System.out.println("成功");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
DBResources.resource(conn, pstmt);
}

⑺ java如何拼接sql语句

你咋不试试,
String columnStr;
String valueStr;
for(int i=0; i<columns.length; i++){
columnStr = "(" + columns[i] + ",";
valueStr = "'( \"" + value[i] + ",";
}

参考JAVA转义字符。网络一下吧。你自己试试,我这里没装jdk,懒得弄了,准备休息了。

⑻ java和sql语句拼接问题

因为拼接字符串没有预编译,像mybatis会预编译,当你传入一个字符串的时候会自动给你添加上'',表示这是一个字符串,但是你手动字符串拼接的时候就需要自己执行mybatis的这个操作,在字符串上添加 ''。最后sql += " and id='"+ id + "'"相当于sql =sql + " and id='"+ id + "'";就是一个字符串简单拼接

⑼ java中如何解决sql字符串的拼接

String temp="";

for(String s : ids){
temp="("+s+"),"
}
temp=temp.subString(0,temp..lastIndexOf(","));

String sql="insert into info_cols(info_id) values "+s;

Conn.update(sql);
//这样就与数据库交互一次,数据库交互尽量要少

阅读全文

与javasql拼接相关的资料

热点内容
压缩因子定义 浏览:966
cd命令进不了c盘怎么办 浏览:212
药业公司招程序员吗 浏览:972
毛选pdf 浏览:657
linuxexecl函数 浏览:725
程序员异地恋结果 浏览:372
剖切的命令 浏览:226
干什么可以赚钱开我的世界服务器 浏览:288
php备案号 浏览:988
php视频水印 浏览:166
怎么追程序员的女生 浏览:487
空调外压缩机电容 浏览:79
怎么将安卓变成win 浏览:459
手机文件管理在哪儿新建文件夹 浏览:724
加密ts视频怎么合并 浏览:775
php如何写app接口 浏览:804
宇宙的琴弦pdf 浏览:396
js项目提成计算器程序员 浏览:944
pdf光子 浏览:834
自拍软件文件夹名称大全 浏览:328