数据库简单说明

为什么需要MySQL的最大连接数?
特定服务器上面的数据库只能支持一定数目同时连接。这时候我们一般都会设置最大连接数(最多同时服务多少连接),在数据库安装时都会有一个默认的最大连接数。
在数据库安装时会有一个选择数量的选项 一般默认最大连接数为100
例如MySQL的安装目录下的my.ini的文件找到max_coenctions=100 此参数可设置最大连接数。
数据库的分页
在很多数据时,不可能完全显示数据。因此进行分段显示。
MySQL的分页是使用关键字limit来进行分页的。 limit (offset)开始位置,size(获取条数)
select * from students order by id limit 0,5;
oracle的分页,要使用三层嵌套查询。
SELECT *
FROM (SELECT ROW_.*, ROWNUM ROWNUM_
FROM (SELECT *
FROM TABLE1
WHERE TABLE1_ID = XX
ORDER BY GMT_CREATE DESC) ROW_
WHERE ROWNUM <= 20)
WHERE ROWNUM_ >= 10;
触发器的使用
触发器,需要有触发条件,当条件满足以后做什么操作。
create trigger insertArticle Trigger after insert on artidel for each row begin
->update board1 set articleCount=articleCount+1 where id = NEW.bid;
->end;
->
delimiter;
存储过程
存储过程只在创建时记性编译,以后每次执行存储过程都不需要在重新编译。而一般的sql语句每执行一次就编译一次,因此使用存储过程可以大大提高数据库执行速度。。
存储过程可以大大减少客户机和服务器之间的网络传输 降低了网络负载
存储过程创建一次便可以重复使用,从而可以减少数据库开发人员的工作量。
安全性高,存储过程可以屏蔽对底层数据库对象的直接访问。使用EXECUTE权限调用存储过程,无需拥有访问底层数据库对象的显式权限。
create procedure insert_Student(_name varchar(50),_age int,out_id int)
begin
insert into student value(null,_name,_age);
select max(stuId) into_id from student;
end;
callinsert_Student(‘wfz’,23,@id);
select @id;

 **JDBC调用存储过程**
  加载驱动: Class.forName("数据库驱动");
  获取连接  
  Connection cn =DriverManager.getConnection("数据库连接地址","数据库账号","数据库密码")
  设置参数
  CallableStatement cstmt = null;
  **cstmt= cn.prepareCall("{call insert_Student(?,?,?)}");**
  **cstmt.registerOutParameter(3,Types.INTEGER);**
  cstmt.setString(1,"lisi");
  cstmt.setInt(2,25);
  cstmt.execute();
  执行
  释放连接

猜你喜欢

转载自blog.csdn.net/lanselianyu/article/details/89497826
今日推荐