![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
虚心求教的少年
努力的你不一定比别人优秀,但一定比不努力的你优秀。
明天的你是否会感谢今天的自己?
展开
-
数据库性能及安全相关
数据源连接池的使用使用数据源和连接池的方法与简单方法相比需要做如下配置1. 在Tomcat安装目录下conf目录下server.xml中最后的“</Host>”标记之前添加如下配置: <Context path="/shop" docBase="shop" debug="5" reloadable="true" crossContext="true" workDir=""> <Resource name="jdbc/sho原创 2020-09-05 16:13:45 · 200 阅读 · 0 评论 -
JDBC数据库编程-总案例【数据的界面模拟】
知识点:JList和JTable的正确使用应该是插入在滚动窗体中package com.bn;import java.sql.*;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.*;import javax.swing.table.*;import javax.swing.event.*;public class DBManager extends JFrame//窗体原创 2020-07-09 19:32:23 · 97 阅读 · 0 评论 -
JDBC数据库编程-元数据-批处理-可滚动的结果集-数据库连接、关闭过程的完善
元数据:数据库元数据:数据库中的表结果的集元数据:列【getColumnCount()】,列名【getCoiumnLabel(int colunm)】,别名【getColumnName(int column)】package com.bn;import java.sql.*;public class DBEx5{ public static void main(String args[]) { try { Class.forName("org.gjt.mm.mysq原创 2020-07-08 18:19:11 · 411 阅读 · 0 评论 -
JDBC数据库编程-数据库连接-自动提交-预编译-存储过程-数据库连接、关闭过程的完善
JDBC编程基础步骤:加载目标数据库的驱动类 指定数据库 打开数据库连接 提交数据库查询 取得查询结果1.加载目标数据库的驱动类2.指定数据库3.打开数据库连接4.提交查询5.取得查询结果...原创 2020-06-30 08:25:59 · 335 阅读 · 0 评论 -
解决端口占用问题(port is already in use)
解决端口占用问题(port is already in use)转载 2020-06-28 09:07:50 · 3541 阅读 · 0 评论 -
经典数据库面试题--员工部门平均工资&作者出书问题&Topn分析
员工工资:实现:drop table t_salary;drop table t_dept;--部门信息create table t_salary(id varchar(2),dept_id varchar(2),name varchar(20),salary number(7,2));insert into t_salary values('1','3','Maggie',3454);insert into t_salary values('2','2','Jerry',原创 2020-06-22 17:30:16 · 422 阅读 · 0 评论 -
oracle_视图
视图原创 2020-06-22 16:49:32 · 140 阅读 · 0 评论 -
数据库对象
序列:序列名.nextval引用序列的下一个值。序列名.currval引用序列的当前值。序列的定义:create sequence mysestart with 10000increment by 2;--间隔为+2select myse.nextval from dual; 10000select myse.currval from dual;--在同一个终端可多次使用currval,且在一个终端只能先nextval才能currvalselect myse.currval f.原创 2020-06-22 09:57:22 · 232 阅读 · 0 评论 -
多表联合查询&&多对多关系的案例
广义笛卡尔积:表R(3行4列)和S(2行5列),结果为表T(3*2=6行,4+5=9列)广义笛卡尔积(即没有where语句的多表查询):是不恰当用对标查询的结果,会大量占用内存。在主键&表之间的关系(外键)建表的基础上,验证广义笛卡尔积的弊端:错误:select student.sno,student.sname,banji.bname from student,banji;正确:select student.sno,student.sname,banji.bname from原创 2020-06-21 22:59:34 · 990 阅读 · 0 评论 -
主键&表之间的关系(外键)
Primary key:(pk)主键直接代表字段为not null,不许重复,且一个表只有一个主键。primary key 相当于在各个组成主键的字段上加上not null约束,再以所有主键字段组合在一起加unique约束。并且建立主键将自动添加一个Bi_tree索引。(因为i主键分离度非常高)插入信息必须符合主键约束。主键的创建:1.create table table_name(字段名 类型 primary key);2.create table table_name(字段名 类原创 2020-06-19 19:52:14 · 2539 阅读 · 0 评论 -
数据库的完整性
实体完整性 参照完整性 用户定义完整性 附录2数据库的三种完整性 关系模型的完整性规则是对关系的某种约束条件,关系模型中有三类完整性约束: 实体完整性 参照完整性 用户定义完整性 其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作是关系的两个不变性,应该由关系系统自动支持。 >实体完整性 规则:若属性A是基本关系R的主属性,则属性A不能取空值 如在关系学生(学号,姓名,年龄,所属班级)中取学号为主码,则学号属性不能为空值 同时,实体完整性规则规定基本关系的所有主属性原创 2020-06-19 18:09:57 · 869 阅读 · 0 评论 -
Oracle约束条件,关联查询
NOT NULL约束条件UNIQUE约束条件:保证此字段相同值不能录入。create table table_name(字段名 类型 ,constraint 约束名 unique(字段名))ALTER TABLE table_nameadd constraintconstraint_name UNIQUE(字段列表);CHECK约束条件:检查指定字段符合条件,才可以输入create table table名(字段名 字段类型 check(字段名 条件式))Alter tab原创 2020-06-19 16:47:30 · 461 阅读 · 0 评论 -
修改表的结构
desc 表名;查看表的结构改表名:RENAME student to studentl;rename studentl to student;加列:alter table 表名add 新加列的名 数据类型 null设定(null\not null);alter table studentadd sgender char(1);(注:直接添加的列时不可直接设定为not null,应先添加可为空的列,为每一个记录添加此字段值后,再改为不可为空)更改表的数据类型:alter ta..原创 2020-06-19 12:19:45 · 612 阅读 · 0 评论 -
ORACLE的索引
功能:加快查询的(selected语句)速度结构:内容(指定索引字段的值)和位置(rowid相当于普通索引中的页码)rowid:ORACLE表的一个定位符。在记录插入时生成,表示记录在物理介质上的存放位置,它包含了Oracle定位数据行需要的所有信息,包括:数据库对象、包括这一行的数据文件、数据块在数据文件中的位置、记录行在块中的位置。rowid表示记录的物理位置。rowid时查找记录物理地址的最快方法。(rowid不是以十六进制表示的,并且rowid是可能变化的,导入再导出就不可信了)可由db原创 2020-06-18 11:26:42 · 191 阅读 · 0 评论 -
sql-结果集运算符-正则式函数
UNION:相当于并运算符,合并两个结构相同的结果集(两个结果集可以来自两个结构相同的不同的表)select * from student where sclass ='97001'unionselect * from studnetwhere sage=24;UNION ALL :与union想比,不会去重,会把两个都符合的结果打印两遍intersect :相当于集合的叫运算,只返回两个参与运算结果集合中相同的记录select * from student where scl原创 2020-06-10 13:37:47 · 249 阅读 · 0 评论 -
SQL——统计检索函数
分组:group by 字段名 将此字段值相同的分到一组一块显示select * from 表 where ...gruop by 字段名1[,字段名2];--gruop by 所带的字段为多个时,把多个看成一组,都相同为一组。注:加group by后select 后的结果列必须是组的共同代表错误示例:select sname "姓名",--加这一行会报错,因为结果是每组一行,但每组却并没有统一的的sname,所以出错sclass "班级",count(*) "人数",co.原创 2020-06-10 12:57:36 · 375 阅读 · 0 评论 -
数据库日期数据的存储和使用精度
日期函数:select to_char(sysdate,'YYYY-MM-DD') from test;//格式化显示日期select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from test;select to_char(sysdate,'YYYY"年"MM"月"DD"日"')from test;insert into test values('1-7月-16');//固定格式的日期插入insert into test values(TO_DA..原创 2020-06-07 10:23:36 · 334 阅读 · 0 评论 -
数据库的脚本
显示当前用户:show user;连接数据库(切换用户):connect;然后输入用户名和口令connect 用户名/口令;数据库的原创 2020-06-03 15:50:57 · 3176 阅读 · 0 评论 -
事务——ACID(事务处理的撤销)
事务:数据库执行事件的最小单元A:原子性 C:一致性(事务执行前后一致) I:独立性 D:持久性撤销DML事务处理可撤销语句:所有dml语句(insert,update,delete)ddl,dcl等都不可以撤销能写在事务中的语句只有select和DML语句因为如果出现非DML并且不是select,之前的操作就会被提交,不可撤销(例:创建下一个table时,前一个table就会被提交,因为create不是DML语句)...原创 2020-05-26 17:08:03 · 1009 阅读 · 0 评论 -
SQL
SQL*PLUS的语法:建立表:create table table名(字段名1 字段类型1,字段名2 字段类型2,...)字段类型:文本:CHAR(n) :占用n个空间的文本(一个中文占用两个英文字符位置)VARCHAR2(n) :最大长度为n的变长字符串 DATANUMBER(p,s) :p是总位数,s是小数点以后的位数;超长后小数部分四舍五入,整数超长报错例 CHEA TABLE test_1 (first_name CHAR(15),lase_name CHAR(2.原创 2020-05-24 16:22:14 · 381 阅读 · 0 评论