数据:记录下来的信息,文字图片。。。
数据库:数据集合
数据库管理系统:用户使用和管理数据库的软件
关系型数据库:二维表的形式来描述数据
E-R模型:实体-联系
实体,用矩形表示,如学校中的每个都是实体,每个实体都由一组属性来表示。
联系:菱形表示,与有关的实体联系在一起,联系的类型,1:1,1:N,M:N
1:1,一个实体最多只与另一实体相联系
1:N,如班级与学生
M:N
学校某班的学生需要选修课程,想知道班主任的任课情况
学生,班主任,课程
班主任:编号,姓名
学生:编号,姓名,年龄
课程:编号,课程名称,学分
范式:在关系数据库中,进行规范化设计
第一范式:每个数据列是不可分割的基本数据项,一列中不能有多个值。
第二范式:建立在第一范式的基础上,必须可以被唯一区分,主键
第三范式:建立在第二范式的基础上,多表之前建立联系,外键
系统用户sys/system
sys最高权限用户,角色sysdba(数据库管理员)
system权限权次于sys,sysoper(数据库操作员),sys可以创建数据库,system不可以
scott普通用户
登录sys/sys as sysdba
system/设置的密码
scott/tiger //默认锁定
show user显示当前用户
解锁scott用户
登录超级管理员
alter user scott account unlock;–解锁
conn scott/tiger;–连接用户
表空间:在数据库开辟一个空间,用于存放数据对象(表,视图),表空间是一个逻辑对象
创建表空间:创建时需要指定物理文件(数据文件)
create tablespace user1 datafile ‘user1_data.dbf’ size 20M;
create tablespace创建表空间的命令
user1表空间名
user1_data.dbf数据文件的路径
20M数据文件的初始大小
数据文件的可扩展性
create tablespace user1 datafile ‘user1_data.dbf’ size 20M autoextend on;
数据文件的增长幅度
create tablespace user1 datafile ‘user1_data.dbf’ size 20M autoextend on next 5M;
数据文件的最大容量
create tablespace user1 datafile ‘user1_data.dbf’ size 20M autoextend on next 5M maxsize 500M;
修改数据库默认表空间
alter database default tablespace user1;
删除表空间
drop tablesapce 表空间名;
查看所有表空间的基本信息
select tablespace_name from dba_tablespaces;–查看表空间名
select * from dba_tablespaces;–查看所有信息
修改表空间名
alter tablespace 表空间名 rename to 新名称;
disc 用户名 --退出
删除表空间及数据文件
drop tablespace user1 including contents and datafiles;
连接用户
conn 用户名/密码
connect
exit退出
运行sql脚本
start d:\test.sql
编辑sql文件
edit d:\test.sql
将屏幕信息输出
spool d:\a.sql
select * from emp;
spoll off
linesize设置行的宽度
show linesize 显示当前字符宽度
set linesize 设置宽度
pagesize 每页显示的行
show pagesize 显示
set pagesize 设置
用户
解锁用户
alter user 用户名 account unlock;
锁定用户
alter user 用户名 account lock;
修改密码
alter user 用户名 identified by 新密码;
修改当前用户密码
password(passw)回车
旧密码
新密码
账户和模式
scott–模式
模式schema,标识某个对象的所有者,如果登录sys用户,想查询emp表,select * from scott.emp;
创建用户
create user 用户名 identified by 密码;
新创建的用户没有任何权限
权限:系统权限,对象权限
系统权限针对数据库特定的操作(创建表,连接数据库,创建视图。。。)
对象权限对已有对象(表)的访问修改删除等操作权限
为用户分配权限
grant create session to 用户;–会话权限
grant create table to 用户;–建表权限
create session会话 create table建表 create view建视图 create public synonym同义词 create procedure过程/函数/包 create trigger触发器
创建用户
create user 用户名 identified by 密码
default tablespace 表空间名 --指定默认表空间 users
temporary tablespace 临时表空间 --指定临时表空间 temp
quota 2M on 表空间名; --用户在表空间上的分配的最大空间
永久表空间
临时表空间(存放一些缓冲区的数据,如排序,索引)
创建临时表空间
create temporary tablespace 表空间名 tempfile ‘路径’;
给用户授系统权限
grant 权限名,权限名 to 用户;
对象(具体对象,表(新增insert,修改update,删除delete,查询select))
grant 权限,权限 on 对象 to 用户;
grant insert,select on test.stu to test;
回收权限
revoke 权限,权限 from 用户;
revoke create table from test;
回收对象权限
revoke 权限,权限 on 对象 from 用户;
revoke insert,select on test.stu from test;
角色(权限的集合)
预定义角色,已存在的部分权限
connect:会话,建表,表视图,建同义词,序列…
resource:存储过程,触发器,建表…
dba所有系统权限
grant connect,resource to 用户;
创建角色
create role 角色名;