@ JAVA中的SQL拼接查询解释
JAVA中的SQL拼接查询解释
String sql = "select * from xiyouji where username = ' "+ username + " 'and password = ' " + password + " ' ";
在JAVA中编写代码时我们常常看到这种形式的代码。
我们可以将其拆分开解释。
大家可以看定义这是一个String类型的名称为sql
的SQL查询语句。我们是要将这段代码加载进MYSQL执行的,所以要用字符串的形式进行传递。
大家不要将username
后面的三个单引号看到一起 , 其实,后面的两个引号是对应最开始的select
前面的两个引号,这是一个字符串,而字符串的内容是
select * from xiyouji where username = '
这个单引号对应着
'and password =`
中的第一个单引号
因为如果你想写在SQL中的语句应该是
select * from xiyouji where username = 'java中的一个变量'
而他们中间的
+ username +
则是负责连接字符串作用的,你们看username
其实是没有被任何的单引号或者双引号包围的,因为他是你写的当前java程序中的一个变量啊! ,你要获取他的值,如果你加上单引号或者双引号不就变成一个字符串了吗?
最后总结一下,切记不要将程序看成
' "+ username + " '
这样你会越看越晕。+
前面是一段String
,后面也是一段String
。
如果还不能理解,可以私信我。