登陆
username system
password *****
1.SQL主键约束和唯一约束有什么区别呢?
主键不能为空
唯一可以为空
相同的就是 都不允许重复
oracle
以后学习:
子查询
连接查询
触发器
视图
索引
pl/sql
函数 事物
底层权限 安全
进入数据库 sqlplus system/123456
类型:
1、数字
number(7,2):放数字,可以放浮点型,意思就是为7位,小数点后面占2位
2、字符,不分字符串和字符
varchar2(25):可变字符 ,我们存一个zhangsan,长度为8,最大为25
char(25):不可变,我们存一个zhangsan,长度为25
3、日期
Date
建表语句
主键 名字 primary key
not null
check(age between 18 and 60)
default '女'
有特殊别名使用“”其他地方用‘’(主要使用)
insert into 表名 values (值)
insert into user_jz values(1,'d','1',20,'女'); 给所有列插值
insert into user_jz (id,name)values(1,'jz') 给所有列插值
select * from 表名
select id,name from 表名
select * from 表名 where id=2
updata 表名 set 修改列名
updata 表名 set age='1' where id=1
select * from 表名 where age between 24 and 30
commit //把前面的sql语句提交执行,
rollback //回滚不执行语句,回滚到到上次commit,回滚
col 列名 format a数字 //缩短显示的字符,只能在本次使用
delete from 表名
delete from 表名
删表
drop table 表名
自动增长
sequence
create sequence seq1 创建序列
increment by 1
start with 100
maxvalue 99999
nocycle
nocache;
select seq1.nextval from dual; //dual oracle中的辅助表
nextval 下一个值
currval 当前值
显示结果使用dual表
外键:
删除顺序
creat table class(
cid varchar(10) primary key;
cname varchar2(20) not null)
creat table student(
sid varchar(10) primary key;
sname varchar2(20) not null;
scid varchar2(10) references class(cid)
//列级约束不需要添加,foreign key
)
列级约束在列后添加约束
表级约束在写完后在最后添加约束
jdbc查询
连接到数据库在本地显示
jdbc在 java.sql
类和接口
Driver//接口
DriverManger//类
Connection
Statement
1.创建驱动 OraclFriver
2.注册驱动 DriverManger
3.获得连接 conection
4.sql语句
5.执行sql语句statement excute
excuteQury 查询
show parameter name
或
select name from v$database;
显示数据库名字
lang 包 Class
ojdbc.jar
Driver d=new oracleDriver();
jsp html
DriverManger 中很多方法是静态的的
执行sql语句。
statement是接口通过链接得到sql语句。
conection.creatstatement
executupdate 可否执行select
查询
PrepareStatement 存储SQL语句一次执行,尽量使用。
占位
插入
执行
setInt
setString
每一条后加 executeUpdate
事物操作
结果集
jdbc