需要注意的是关键字部分,其他内容需要根据自己的表的而适当调整 创建用户 删除用户: 设置与更改用户密码: 创建角色 示例 撤销授权: 注意: 反过来 GRANT SELECT ON zje.aaa TO ‘zje’@‘%’;授予权力 示例: 如果一个字段有多个约束呢,手动再增加一波 主键约束 检查约束 唯一性约束 默认值约束 外键约束 示例:(提供一个number(6)的序列) 删除序列: 获取序列: 创建单一索引: 创建复合索引: 如果在where 子句中有OR 操作符或单独引用Job 列(索引列的后面列) 则将不会走索引,将会进行全表扫描。 删除: 查询: 禁用和重建索引: 查看当前用户dbowner拥有多少数据库对象? 查看当前用户dbowner拥有哪些表。 查看当前用户dbowner拥有哪些序列。 查看当前用户dbowner拥有哪些索引。 查看当前用户dbowner拥有哪些约束。 增内容: 增一个字段(一列): 删内容: 删表中一列: 删除表: 改内容: 改列名: 改列类型: 查内容: 会一直更新完善,如有错误,欢迎留言纠正。数据库操作分类
用户和角色以及赋于权限(增,删,对用户基本操作)
CREATE USER dbowner IDENTIFIED BY dbowner; 或 CREATE USER 'user_name'@'host' IDENTIFIED BY 'password'; user_name:要创建用户的名字。 host:表示要这个新创建的用户允许从哪台机登陆,如果只允许从本机登陆,则填 ‘localhost’ , 如果允许从远程登陆,则填 ‘%’ password:新创建用户的登陆数据库密码,如果没密码可以不写。
DROP USER user_name;
SET PASSWORD FOR ‘username’@‘host’ = PASSWORD(‘newpassword’); 如果是设置当前用户的密码: SET PASSWORD = PASSWORD('newpassword'); 如: SET PASSWORD = PASSWORD(‘123456’);
create role dbrole_t;
授权
grant (权限名) to (角色名or用户名); grant (角色名) to (用户名);
GRANT DBA TO dbowner; GRANT SELECT ON students TO dbrole_t; GRANT SELECT, INSERT, DELETE ON operate_reports TO dbrole_t; GRANT EXECUTE ON 函数名或存储过程名 TO dbuser_t;
REVOKE 权限名 ON 表名 FROM ‘用户名’@‘host’; 或 REVOKE 权限名 ON 表名 FROM 用户名;
若授予权利是这样写: GRANT SELECT ON . TO ‘zje’@‘%’;
则用 REVOKE SELECT ON zje.aaa TO ‘zje’@‘%’;是不能撤销用户zje 对 zje.aaa 中的SELECT 权利的。
用 REVOKE SELECT ON . FROM ‘zje’@‘%’;也是不能用来撤销用户zje 对zje库的aaa表的SELECT 权利的创建表(带约束条件)
create table student( studentid number(2) primary key, --主键约束 studentname varchar(10) not null, --非空约束 studentsex char(2) check(studentsex='男' or studentsex='女'), --check约束 studenttel number(11) unique, --唯一性约束 studentaddress varchar(50) default '上海', --默认值约束 classid number(2) references classinfo(classid) --外键约束 );
增加约束
alter table Student add constraint PK_Student_StuId primary key(StuId); --student是表名; PK_Student_StuId是约束名,是自己起的,不起的话系统一会自动分配; --stuid指出哪个字段是主键。
alter table Student add constraint CK_Student_Gender check(gender='男' or gender='女'); alter table Student add constraint CK_Student_Age check(Age>=0 and Age<=100);
alter table Student add constraint UQ_Student_StuName unique(StuName);
alter table (表名)add constraint (约束名)default '未填写' for (字段名); --也可以这样 alter table Student Modify Address varchar(50) default '地址不详'; alter table Student Modify JoinDate Date default sysdate;
alter table Student add constraint FK_Student_StuCLass_ClassId foreign key(ClassId) references StuClass(ClassId);
序列操作(创建,删除,获取)
创建序列:create sequence seq_id increment by 1 --每次跳几 start with 1 --从几开始 maxvalue 999999 --最大值 minvalue 1; --最小值
DROP SEQUENCE 序列;
SELECT 序列名.NEXTVAL FROM DUAL
索引操作(创建,删除,查询,禁用和重建)
Create Index <Index-Name> On <Table_Name>(Column_Name);
Create Index i_deptno_job on emp(deptno,job); —>在emp表的deptno、job列建立索引。 select * from emp where deptno=66 and job='sals' ->走索引。 select * from emp where deptno=66 OR job='sals' ->将进行全表扫描。不走索引 select * from emp where deptno=66 ->走索引。 select * from emp where job='sals' ->进行全表扫描、不走索引。
drop index 索引名;
--根据索引名,查询表索引字段 select * from user_ind_columns where index_name='索引名'; --根据表名,查询一张表的索引 select * from user_indexes where table_name='表名';
--禁用索引 alter index 索引名 unusable; --重新启用索引,重建索引 alter index 索引名 rebuild;
查看当前用户下的各种信息
select count(*) from all_objects t;
select * from all_tables where owner='DBAOWNER';
select * from user_sequences;
select index_name,index_type,table_name from user_indexes order by table_name;
select constraint_name,constraint_type,search_condition from user_constraints;
对表内容以及自身的操作(增,删,改,查)
增
insert into student values("G0107","S201801200","小明","男","2001-08-09",17) ; #插入一整行值,不可错位 insert into student (student_name,gender,age) values("小李","男",19); #插入部分值
alter table 表名 add (字段 字段类型) [ default '输入bai默认值'] [null/not null] ; 例:ALTER TABLE student ADD gender varchar(20) Default 0 NOT NULL ; --default 和 not null 的顺序不能反过来
删
delete from student where student_name ="孙权" ; #删掉孙权所在的这一行
alter table student drop column gender ; #删掉gender这一列
drop table student;
改
update student set gender ="女" where student_name ="小李" ; #将小李的gender改为女
ALTER TABLE 表名 RENAME COLUMN 旧列名 TO 新列名;
ALTER TABLE 表名 MODIFY (列名VARCHAR(25)); --将列名修改为varchar(25)类型
查
select * from student ; #查询所有列,即整张表 select student_name,gender from student; #两列,列之间用逗号隔开 --带条件的查询 select * from student where student_name ="孙权"; #显示孙权这一行所有value select * from student where age > 14; #找出所有年龄大于14岁的学生 select * from student where student_name like "杨%" ; #匹配关键字like; 通配符%:替代0个或多个字符 select * from student order by class_id ASC ; #查询student表的信息 并按class_id排序;ASC可省略
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算