黑马程序员技术交流社区
标题:
拼接SQL语句
[打印本页]
作者:
寥若星辰
时间:
2012-12-21 20:37
标题:
拼接SQL语句
关于拼接SQL语句的方式有哪些呢?
作者:
赵小江
时间:
2012-12-21 20:40
拼接SQL语句?嘛意思?
作者:
谢辉林
时间:
2012-12-21 21:26
你所谓的sql语句是不是增,删,改,查呀!。
如果是的话它主要用于拼接操作有条件的增,删,改,查。
既然是拼接语句如果长度不确定的话就用StringBuffer修饰
作者:
张鹏飞
时间:
2012-12-21 21:37
string strSql="select * from table where 1=1";
string strW="";
if (条件1!="")
strW+=" and 字段1='"+条件1+"'";
if (条件2!="")
strW+=" and 字段2='"+条件2+"'";
strSql+=strW;
作者:
阮佳佳
时间:
2012-12-21 22:12
可以用参数化的方式拼接sql,比如
StringBuffer Sql=new StringBuffer("SELECT * FROM TABLE");
Sql.append(" WHERE "); //注意WHERE前后的空格。
if(条件1成立) Sql.append(" 字段1='"+条件1+"' AND ");//字段和条件可以自己随意设定
if(条件2成立) Sql.append(" 字段2='"+条件2+"' AND ");
String FinalSQL=sql.toString();
System.out.println(finalSQL);
System.out.println("最后AND位置 "+finalSQL.lastIndexOf(" AND ")); //去掉最有一个AND ;没有AND的情况肯定是没有任何条件成立where也可以不要了
finalSQL=finalSQL.substring(0,finalSQL.lastIndexOf(" AND ")>0? finalSQL.lastIndexOf(" AND "):finalSQL.indexOf("WHERE"));
System.out.println(finalSQL);*注:sql.append(" WHERE "); 就相当于 sql = sql + "where"
作者:
Sailing.
时间:
2012-12-21 22:17
刚刚学到的string.Join(" and ",string),string.Join(" or ",string)等。
作者:
杭州-杨
时间:
2012-12-21 22:19
同意楼上的,最好些SQL的时候,注意点防注入的,比如sqlparameter ,还有在用JOIN的时候,注意STRING的参数,如果没有,就不要JOIN了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2