java中sql语句为什么不能出现 * ?
6个回答
展开全部
数据库语句中,不要用 * 来代替也不能出现用变量拼写的语句
欠规范代码示例:
//一个sql查询语句
String sql = "select * from student where id ="+ user.getId();
规范代码示例:
String sql = "select id,name,sex,age from student where id =?";
解析:1.用属性名而不用*让语句看起来更加清析易懂。
2.在增加或删除属性的时候出错的机率更少,也容易找出问题来。
3.一般情况不要去拼凑sql语句,应当用占位符,预处理来发送sql语句;
欠规范代码示例:
//一个sql查询语句
String sql = "select * from student where id ="+ user.getId();
规范代码示例:
String sql = "select id,name,sex,age from student where id =?";
解析:1.用属性名而不用*让语句看起来更加清析易懂。
2.在增加或删除属性的时候出错的机率更少,也容易找出问题来。
3.一般情况不要去拼凑sql语句,应当用占位符,预处理来发送sql语句;
追问
* 查询整张表的时候,不是更清晰更加容易看懂吗?
追答
在查询整张表的时用*,虽然简单易懂,可是别人知道你查了什么呢?别人要看是你查了什么,你这张表里面有那些东西。还有当数据库里面有字段为空的时候,很容易报错。如果查询用的是属性名,当出错的时候,更容易找到。
展开全部
用*的效率比较低。
这样写数据库首先需要解析该表中有哪些字段,然后再查询,所以效率低。
这样写数据库首先需要解析该表中有哪些字段,然后再查询,所以效率低。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*是通配符. 当然不能出现.
不过可以用select * form table 代表查所有..
不过可以用select * form table 代表查所有..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
谁说不能用*
我一直这样写String sql=“ select * from tableName ”;
我一直这样写String sql=“ select * from tableName ”;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |