数据库标准语言SQL(二)——模式的定义
一、前言
从这篇文章开始,我们就正式进入到数据库标准语言SQL的学习和实践。本篇主要是介绍数据库内数据对象-模式的定义、以及删除操作。
二、模式的定义与删除操作
1.语法
CREATE SCHEMA <模式名(可不写)> AUTHORIZATION <用户名>
2.示例
eg1.定义一个测试模式 Test
create schema "Test" authirization ZHANG;
#这是一般数据库的定义模式语句
#由于我用的是Oracle数据库,不支持自定义模式
#想要创建模式的话只能新建一个用户
#每个用户会有一个默认的和用户名相同的模式
create schema AUTHORIZATION ZHANG;
#这样是可以的,
#默认模式名和用户名一致
所以,后面的内容就以ZHANG来展开了,下面可以为各位大佬简单介绍一下怎么创建一个用户:
成功进入后:
使用system的默认用户进入,system和sys两个默认用户拥有创建新的用户的权限
接下来开始
例如创建一个ZHANG的用户:
CREATE USER ZHANG IDENTIFIED BY 你的密码哦
用户授权:
GRANT CONNECT,RESOURCE,DBA TO ZHANG;
# CONNECT (连接角色): 这种角色下只可以登录 Oracle, 不可用创建实体, 也不可用创建数据库结构, 即只能对其他人创建的表中的数据进行操作.
# RESOURCE: 该角色可以创建实体, 但是不可以创建数据库结构. 可以创建表、序列 (sequence)、运算符 (operator)、过程 (procedure)、触发器 (trigger)、索引 (index)、类型 (type) 和簇 (cluster).
# DBA: 该角色拥有系统最高权限, 只有 DBA 才可以创建数据库结构. 包括无限制的空间限额和给其他用户授予各种权限的能力, system 由 dba 用户拥有.
连接到数据库
CONNECT ZHANG@ORCL;
删除用户:
drop user ZHANG
怎么办呢?就给他断开就完了:
#查找有哪些连接
select username,sid,serial# from v$session where username='ZHANG';
#断开
#我也不知道我为什么断不了,只能退出然后重新删。
alter system kill session '4,12874';