绑定变量(binding variable),共享池(shared buffer pool), SGA(system global area);
作用:将sql的应分析变为软分析,减少花在硬分析上的资源和时间。
java使用绑定变量:
根据ID批量删除 sql
String sqlString = "delete from ivf_incubator_setting_d ifd where ifd.incubator_setting_h_id in (:ForeignId)";
Query query = getEntityManager().createNativeQuery(sqlString);
String[] id = ids.split(",");
return query.unwrap(SQLQuery.class).setParameterList("ForeignId", id).executeUpdate();
根据ID删除 hql
@Override
public int removeEntityById(Class<?> clazz, Serializable id) {
StringBuilder jphl = new StringBuilder();
jphl.append("DELETE FROM ").append(clazz.getSimpleName());
jphl.append(" d WHERE d.id=:entityId");
return getEntityManager().createQuery(jphl.toString()).setParameter("entityId", id).executeUpdate();
}
SGA:系统全局区,包括数据高速缓冲区、重做日志区和共享池,是所有用户进程共享的内存区域。