jdbc
书写单例模式
public class Man {
private static Man m = new Man();
private Man(){}
public static Man getMan(){
return m;
}
}
如何删除主表记录?
由于有外键约束存在,如果主表记录有从表记录进行引用,那么无法删除主表记录。
删除主表记录有两种方式:
1、级联删除,先删除主表记录对应的所有从表记录,然后再删除主表记录。
2、外键置空,先将主表记录对应的所有从表记录外键设置为null,然后再删除主表记录。
书写case when语句
CASE WHEN price>=1000 THEN '高价商品'
WHEN price>=100 AND price < 1000 THEN '中档商品'
ELSE '低档商品'
END
什么是JDBC
JDBC是JAVA连接数据库的一套规范。该规范定义了一系列的接口,由数据库厂商实现,由用户根据接口调用。用户根据接口方法就可以屏蔽不同数据库的差异,无论连接什么数据库都是一套API。
JDBC开发流程
加载驱动
建立连接
执行SQL语句
关闭连接
什么是SQL注入
SQL注入是指在执行SQL语句时,如果以拼接字符串方式进行值的注入,那么如果值中有非法字符或数据库关键字时,就会导致执行错误或执行结果不正确的情况。
Statement和PreparedStatement的区别
Statement是PreparedStatement的父接口,使用拼接字符串的方式填充SQL语句中的值,所以,当值不同的时候,JDBC会重新编译SQL语句,效率低,而且容易造成SQL注入。
PreparedStatement提供了占位符方式设置SQL语句,JDBC不会重新编译SQL语句,而且无论是什么值都当做字符串处理,不会造成SQL注入。