甲骨文公司的产品
MySQL Oracle收购的
没有对用户具有太多的 太严格的权限 角色理念
属于中小型数据库
Oracle
权限/角色要求 特别 严格
很重要 能够 有效的防止删库跑路
----基础部分
1. 安装/卸载
2. 连接数据库
3. 退出数据库
4. 用户管理
5. 表管理
----高级部分
1. 表操作 增删改查 CURD create update read delete
2. 角色/权限/角色要求
3. 函数 触发器 使用
4. sql编程
5. 数据库的管理
6. a. 索引,是有效解决大量数据查询寻效率的有效过程
b. 约束,主外键关联
c. 事务,保证数据的完整性
a. 微软 sqlserver 和 access 非常适合.net体系语言 其他语言也可以 但是效率不行
稳定度存在问题
b. 瑞典 AB公司 MySQL 前身 瑞典AB公司产品 后被Oracle收购
c. IBM db2 和 infromix 大型数据库 体量大过了Oracle
d. 美国 Sybase postgresql
1. 负载量(并发量)
2. 成本(项目经费、)
3. 安全(迄今为止最重要,最看重的)
access foxbase sqlite
负载量很小 access 10人左右 成本2000左右
sqlite 1个人 免费的
没有安全性
sqlserver mysqsl
负载量:(单机)100人左右
成本 万元以内 (sqlserver)
sqlserver有免费教育版 安全性是有的 但是不是很强
db2 oraccle sybase
数据排行:
db2 > Oracle > sybase
安装
安装前一定要把以前的有关Oracle的一切都要删掉
注册表 regedit
HKEY_Local_Machine-》 software ——》 oracle开头的全删掉
HKEY_Local_Machine-》 system -》 CurrentControlSet\Services\Oracle开头的全删掉
HKEY_Local_Machine-》 system -》 CurrentControlSet\Services\EventLog\application。。
重启 删掉D盘中有关的文件
C盘 appdata local oracle 有的话删除
登录:
sys、system、scott
scott登录:
sqlplus登录
查询登录用户: show user;
查询所有的表: SELECT * FROM tab;
当查询出来的结果不能够单行显示的时候可以使用 set linesize 设置每行显示字符。
sql文件编辑 edit命令
sql文件执行 start和@都可以 等效的。
spool命令是用来输出sql语法和结果的。
spool
。。。。
。。。。 中间的所有的sql以及结果会被存储下来。
spool off作为结束
创建用户:
create user <用户名> identified by <密码>;
需要注意:密码在11g以上新版没有强制性要求,可以纯数字。
修改密码:
alter user <用户名> identified by <新密码>;
删除用户:
drop user <用户名>
在sqlplus中切换用户
Conn 用户名/密码
创建完用户后,出现: user XIAOMING lacks CREATE SESSION privilege; logon denied
意思就是用户没有登录数据库的权限,所以需要授权
grant connect to <需要登录的用户>
这个 connect不是登录权限,他是ORACLE默认的具有登录权限角色
授权给用户来查询自己的表。
grant select on <表名> to <用户名>
一定要记住,查询的时候,需要带上表的归属者。
例如:select * from scott.emp;
撤销权限
revoke select on emp from <用户>;
with grant option(对象权限)主要来说下:
带着个属性意思就是将授权的权限一次附带给用户。
with admin option(系统权限)