数据库
文章平均质量分 92
_Rick
这个作者很懒,什么都没留下…
展开
-
MySQL的COUNT语句暗藏玄机
前言:关于数据库中行数统计,无论是MySQL还是Oracle,都有一个函数可以使用,那就是COUNT但是,就是这个常用的COUNT函数,却暗藏着很多玄机,尤其是在面试的时候,一不小心就会被虐。不信的话请尝试回答下以下问题:1、COUNT有几种用法?2、COUNT(字段名)和COUNT( * )的查询结果有什么不同?3、COUNT(1)和COUNT( * )之间有什么不同?4、COUNT(1)和COUNT( * )之间的效率哪个更高?5、为什么《阿里巴巴Java开发手册》建议使用COUNT(原创 2021-02-24 17:15:26 · 266 阅读 · 0 评论 -
30条书写高质量SQL的建议
30条书写高质量SQL的建议##1、查询 SQL 尽量不要使用 select *,而是 select 具体字段反例子:select * from employee; 正例子:select id,name from employee; 理由如下:只取需要的字段,节省资源、减少网络开销。select * 进行查询时,很可能就不会使用到覆盖索引了,就会造成回表查询。2、如果知道查询结果只有一条或者只要最大/最小一条记录,建议用 limit 1正例:select id,na原创 2020-11-12 15:23:21 · 127 阅读 · 0 评论 -
线程与同步(锁):创建方式及其案例(卖火车票)
实现线程一:继承Thread类 创建线程的步骤:1.定义一个类继承Thread。2.重写run方法。3.创建子类对象,就是创建线程对象。4.调用start方法,开启线程并让线程执行,同时还会告诉jvm去调用run方法public class MyThread extends Thread { @Override public void run() { ...原创 2019-03-18 22:38:15 · 287 阅读 · 0 评论 -
自定义Mybatis持久层框架
自定义持久层框架1.回顾JDBC创建自定义持久层框架前,让我们先来回顾一下,JDBC的操作:public static void main(String[] args) { Connection connection = null; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { //加载数据库驱动原创 2020-07-14 16:01:47 · 364 阅读 · 0 评论 -
C3P0和DBCP的区别
原创 2019-05-12 21:57:41 · 661 阅读 · 0 评论 -
Spring的JDBC的使用(配置和CRUD)
导包:Spring的JDBC模板的使用一、默认连接池创建数据库create database spring4;use spring4;create table account(id int primary key auto_increment,name varchar(20),money double);使用JDBC模板保存数据创建一个测试类pa...原创 2019-05-12 20:38:07 · 504 阅读 · 0 评论 -
DBUtils模版CRUD
准备:导包1.创建c3p0-config.xml配置文件放在src下<?xml version="1.0" encoding="UTF-8"?><c3p0-config> <!-- default-config 默认的配置, --> <default-config> <property name="driver...原创 2019-04-03 16:02:19 · 214 阅读 · 0 评论 -
C3P0模板
1.创建c3p0-config.xml配置文件放在src下<?xml version="1.0" encoding="UTF-8"?><c3p0-config> <!-- default-config 默认的配置, --> <default-config> <property name="driverClass"...原创 2019-04-03 15:04:53 · 193 阅读 · 0 评论 -
数据库连接池C3P0的使用
一、直接使用代码链接(一般企业开发不会用到。大多数用方法二)1.导入jar2.新建JDBCUtilimport java.io.FileInputStream;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.Resu...原创 2019-04-03 14:11:05 · 249 阅读 · 0 评论 -
数据库连接池DBCP的使用
一、直接使用代码链接(一般企业开发不用这种方式)1.导入JAR把jar包拷贝到lib文件夹里面然后右击 build path一下2.建一个jdbc.proprtties文件driverClass=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost/mydbname=rootpassword=xxxxxx3.新建JDBCUt...原创 2019-04-03 09:05:20 · 201 阅读 · 0 评论 -
事务&事务的安全隐患
事务Transaction 其实指的一组操作,里面包含许多个单一的逻辑。只要有一个逻辑没有执行成功,那么都算失败。 所有的数据都回归到最初的状态(回滚)为什么要有事务?为了确保逻辑的成功。 例子: 银行的转账。使用命令行方式演示事务。开启事务start transaction;提交或者回滚事务commit; 提交事务, 数据将会写到磁盘上的数据库rollba...原创 2019-03-31 22:24:53 · 416 阅读 · 0 评论 -
通用增删改(问号可变)
@Test public void testUpdate(){// update("insert into account values(null , ?,?)" , "aa",10); // update("delete from account where id = ?" ,14); // update("update account set money = ? whe...原创 2019-04-04 18:02:56 · 176 阅读 · 0 评论 -
JDBC模板CRUD
创建一个Util工具类创建工具类为了方便后期管理,例如对数据库做出修改的时候只需要在工具类里修改一处即可!import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLEx...原创 2019-03-03 23:35:16 · 351 阅读 · 0 评论 -
JDBC事务
事物准备:导入数据库Utils1.简单的一般回滚操作package demo2;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class Test { public s...原创 2019-03-04 20:31:11 · 265 阅读 · 0 评论 -
JDBC批处理方法
每次新建Connection的时候相当于建了一座桥,每次一辆车(PreparedStatement)运送货物(ResultSet)成本太高!每次都建立网络连接的时间远远大于本地的时间,为了处理大量的数据所以将数据打包,然后发送static void createBatch() throws SQLException { Connection conn = null; Pre...原创 2019-03-04 22:39:20 · 350 阅读 · 0 评论