java和sql执行语句中引号和单引号的区别怎么解释啊

2024-10-27 23:39:59
推荐回答(5个)
回答1:

-----为了讲解方便---补全部分代码---

-----为了区分双引号和单引号,直接用改成中文状态的,在实际中英文的。

String username = “”;//具体的一个条件值

String password = “”;//具体的要给条件值.

String sql =“ select * from user where username='zhangsan' and password='123456' ”;

------------

以上这条sql语句是查询username = 'zhangsan' and password = '123456'的user 信息.

你会发现只能查询固定的 username = 'zhangsan' and password = '123456'的信息,不能进行改变。

如果我要查询 uername = 'lisi';的根本就更改不了,所以要将zhangsan换成变量.

改写如下:

String sql =“ select * from user where username='”+username+“' and password='”+password+“' ”;

说明:“ select * from user where username='” 这是字符串的一部分:username是一个字符串

+username+ :字符串的连接 ,username是一个字符串变量.

“' and password='”: 连接两外一个字符串

+password+ :在加上一个变量。

回答2:

首先你这个绝对写错了,正确应该是

sql="select * from user where username='"+username+"'and password='"+password+"'";

引号的意思是给sql这个String变量赋值,引号内的内容是sql变量的值;

小引号是给sql命令的字段赋值,因为存在变量赋值,所以相当于一个字符串拼接,第一个username是user表里的字段名,第二个username是你要给这个字段赋值的内容

回答3:

举个例子:
int age = 10;
System.out.println("my age is "+age+",i am a bigdog");
这是用来把一个变量放到一个String中。还记得String类型与其他类型是通过+号进行连接吗,
System.out.println("i am"+age);
现在前后都有+号,只不过是因为后面还有String
System.out.println("i am"+age+"yeatr old");
单引号是sql语句中:
举个例子:
select * from table where name='aaa';
单引号就是=号后的只要是String类型的就要加上‘’。
懂了没?

回答4:

"select * from user where username='"+username+"'and password='"+password+"'"
即select * from user where username='yourusername' and password='yourpassword'
“”是java的字符串,‘’是SQL的字符串。

回答5:

“”是String字符串,连接时用+
而SQL语句如果是字符串这用' '
select * from user where username=username=‘ username ’ and password = ' password '
SQL原句