jdbc中,字符串拼接的问题
JDBC中的sql语句单引号和双引号,双引号是为了表示字符串,这个很容易懂。 出现单引号一般是需要对数据库执行更新操作(更新字段或者插入数据)或者查询操作时,出现了字符串。 在数据库中,字符串是用一对单引号括起来的,整型不用。而这种拼接的方式最主要的目的就是将单引号中的值替换为变量,在sql语句被执行时将解析这些变量再将其替换为需要的数据,这样就比固定值更加灵活。
String sql="select * from users where "+"username='"+username+"' and password='"+password+"'";
单引号起的作用就是把变量包围起来,方便传参替换。
比如:
String name="张三";
String sql="select * from stu where name='"+name+"'";
//等价于
String sql="select * from stu where name='张三'";
开头的语句最后传入到sql中的是
select * from users where username='张三' and password='123456'
String sql="select * from stu where name='"+name+"'";
java中的字符串只能双引号(js可以单引号也可以双引号),如果字符串中需要拼接变量,该变量用单引号括起来,然后加两个双引号再加两个加号,中间就是变量
只需要这样记住就行:单引号 括双引号 两个加号 中间变量 ( 0Q0 OMG)