怎么更改sql的实例版本_学会复杂一点的SQL语句:Oracle DDL和DML

670ecb5f6e4ecd6fc33533e6b650c8dc.png

create:创建表创建用户创建视图

创建表

create table student(id int,score int) ;

student后面与括号之间可以有空格可以没有

创建用户

create user liuyifei identified by 4852396;

drop:删除整个表、删除指定的用户、删除指定的存储空间

drop table table_name;drop user user_name;--删除空的表空间,但是不包含物理文件drop tablespace tablespace_name;--删除非空表空间,但是不包含物理文件drop tablespace tablespace_name including contents;--删除空表空间,包含物理文件drop tablespace tablespace_name including datafiles;--删除非空表空间,包含物理文件drop tablespace tablespace_name including contents and datafiles;--如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTSdrop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;

truncate

删除表中的所有数据,但是表还是存在的。和drop的先后参见如下:

SQL> create table st1(id int);表已创建。SQL> truncate table st1;表被截断。SQL> drop table st1;表已删除。SQL> create table st1(id int);表已创建。SQL> drop table st1;表已删除。SQL> truncate table st1;truncate table st1               *第 1 行出现错误:ORA-00942: 表或视图不存在

alter:增加删除修改字段

SQL> create table s1(id int,a int,score int);表已创建。SQL> alter table s1 add name varchar2(10);表已更改。SQL>SQL> desc s1; 名称                                      是否为空? 类型 ----------------------------------------- -------- ---------------------------- ID                                                 NUMBER(38) A                                                  NUMBER(38) SCORE                                              NUMBER(38) NAME                                               VARCHAR2(10)SQL> alter table s1 drop a;alter table s1 drop a                    *第 1 行出现错误:ORA-00905: 缺失关键字SQL> alter table s1 drop column a;表已更改。SQL> alter table s1 rename to s2;表已更改。SQL> desc s2; 名称                                      是否为空? 类型 ----------------------------------------- -------- ---------------------------- ID                                                 NUMBER(38) SCORE                                              NUMBER(38) NAME                                               VARCHAR2(10)SQL> desc s1;ERROR:ORA-04043: 对象 s1 不存在SQL> alter table s2 rename column name to sname;表已更改。SQL> desc s2; 名称                                      是否为空? 类型 ----------------------------------------- -------- ---------------------------- ID                                                 NUMBER(38) SCORE                                              NUMBER(38) SNAME                                              VARCHAR2(10)

DML:只对表的数据改变,没有改变表的属性

DML操作之后要进行commit操作才会更改数据库。

select:查询

SQL> select score,sname from s2 where id='2';     SCORE SNAME---------- ----------        99 ayun

insert:插入记录

SQL> insert into s2 values(1,100,'aming');已创建 1 行。SQL> insert into s2 values(2,99,'ayun');已创建 1 行。SQL> insert into s2 values(3,79,'ahe');已创建 1 行。

delete:删除记录,不改变表的属性。

SQL> delete from s2 where score='100';已删除 1 行。SQL> select * from s2;        ID      SCORE SNAME---------- ---------- ----------         2         99 ayun         3         79 aheSQL> delete from s2;已删除2行。SQL> select * from s2;未选定行SQL> desc s2; 名称                                      是否为空? 类型 ----------------------------------------- -------- ---------------------------- ID                                                 NUMBER(38) SCORE                                              NUMBER(38) SNAME                                              VARCHAR2(10)

update:更新记录

SQL> update s2 set score=100 where sname='ahe';已更新 1 行。SQL> select * from s2;        ID      SCORE SNAME---------- ---------- ----------         1        100 aming         2         99 ayun         3        100 ahe

DCL:只改变属性

grant:授权

revoke:收回权限

grant语法:GRANT privilege[, ...] ON object[, ...] TO { PUBLIC | GROUP group| username}权限privilege:    select:查询    insert:插入    update:更新    delete:删除    rule:    all:所有grant select,insert,update on tablename to public;给所有用户授予查询、插入、更新tablename表的权限revoke select,insert,update on tablename from public;//收回所有用户查询、插入、更新tablename表的权限object:    table:表    view:视图    sequence:序列    index:索引grant select,insert,update on tablename,viewname,sequencename,indexname to public;public:对所有用户开放权限GROUP groupname:对该组所有用户开放权限username:对指定用户开放权限

给用户授权,connect权限和resource权限。

不给新建用户授予connect权限,新建用户无法通过SID或SERVICE_NAME连接数据库实例。

不给新建用户授予resource权限,新建用户无法创建表。

SQL>SQL> create user liuyifei identified by a4852396;用户已创建。SQL> conn liuyifei/a4852396;ERROR:ORA-01045: user LIUYIFEI lacks CREATE SESSION privilege; logon denied警告: 您不再连接到 ORACLE。SQL> show user;USER 为 ""SQL> conn / as sysdba;已连接。SQL> show user;USER 为 "SYS"SQL> grant connect to liuyifei;授权成功。SQL> conn liuyifei/a4852396;已连接。SQL> show user;USER 为 "LIUYIFEI"SQL> create table stu(id int);create table stu(id int)*第 1 行出现错误:ORA-01031: 权限不足SQL> conn / as sysdba;已连接。SQL> show user;USER 为 "SYS"SQL> grant resource to liuyifei;授权成功。SQL> conn liuyifei/a4852396;已连接。SQL> create table stu(id int);表已创建。

查看指定用户有哪些系统权限

这项操作只可以是dba查看,普通用户是不能查看的,即使是查看自己的。下面的代码已经验证了这个问题。

SQL> select * from dba_tab_privs where grantee=uper('liuyifei');select * from dba_tab_privs where grantee=uper('liuyifei')              *第 1 行出现错误:ORA-00942: 表或视图不存在SQL> select * from dba_roles_privs where grantee=uper('liuyifei');select * from dba_roles_privs where grantee=uper('liuyifei')              *第 1 行出现错误:ORA-00942: 表或视图不存在SQL> show user;USER 为 "LIUYIFEI"SQL> conn / as sysdba;已连接。SQL> select * from dba_tab_privs where grantee=upper('liuyifei');未选定行SQL> select * from dba_role_privs where grantee=upper('liuyifei');GRANTEE                        GRANTED_ROLE                   ADM DEF------------------------------ ------------------------------ --- ---LIUYIFEI                       CONNECT                        NO  YESLIUYIFEI                       RESOURCE                       NO  YES

附录1:

truncate和delete的区别

truncate会收回表空间,delete不会收回表空间

附录2:

sys用户和system用户的区别:

SYS用户,缺省始终创建,且未被锁定,拥有数据字典及其关联的所有对象

SYSTEM用户,缺省始终创建,且未被锁定,可以访问数据库内的所有对象

最后,咱给小编:

1. 点赞+关注

2. 点头像关注后多多评论,转发给有需要的朋友。

谢谢!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489854.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再谈智能

来源:人机与认知实验室1. 智能的产生1.1 智能生成机理有关智能生成的机理,一直是许多领域关注的焦点问题,涉及面之广、深很是少见,初步梳理可能会与这样几个最基本的问题有关:认知生成的机理、知识生成的机理、意…

的图片怎么循环渲染_十分钟教你做个炫酷的图片切换过度效果

做个炫酷的图片切换过度效果首先,今天是520节日。到了520这类为情侣准备的节日,小编都会感到一万点暴击……首先酸一波,搞点事情(蹭波热度)。给大家分享一个520特效页面:看完记得回来为小编点个赞哦!这是案例请扫前言老…

8 线程安全且高效的单例模式

(1)双检查 if(instance null){//一次检查 synchronized (MySingleton.class) { if(instance null){//二次检查 instance new MySingleton(); } } (2)静态…

《自然》:修复AI神经网络的缺陷

来源:王宏琳科学网博客我在上一篇《海外观察》博客中,介绍了纽约大学马库斯教授和戴维斯教授的新书《重启 AI:构建我们可以信任的人工智能》和图灵奖得主朱迪亚•珀尔的著作《为什么:关于因果关系的新科学》。这两本书都分析了以深…

python魔法方法与函数_在Python中画图(基于Jupyter notebook的魔法函数)

这篇文章主要介绍了在Python中画图(基于Jupyter notebook的魔法函数),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 先展示一段相关的代码: #we test the accuracy of knn and find the k which ma…

三. 自动化测试用例设计

1. 主要内容: 2. 手工测试用例与自动化测试用例区别 目前自动化测试更多的时候是定位在冒烟测试和回归测试; 冒烟测试执行的是主体功能点的用例。回归测试执行全部或部分的测试用例。3. 测试类型 4. 异常 5. WebDriver错误截图 get_screenshot_as_f…

c json保存整型数组,您如何存储“ int”? NSMutableArray *或NSMutableDictionary *中的值?整数形式的JSON数据的长期问题。...

How do you store "int" values in an NSMutableArray or NSMutableDictionary? Chronic problems with JSON data that come in as integers.Should I try to store these integers as NSNumber objects or just as strings that contain the integer?How dangero…

c++卸载工具_win7系统如何卸载office2007兼容包

win7系统如何卸载office2007兼容包?office2007是一款热门的办公软件,但有的朋友不习惯使用office2007,但是一些说电脑安装office2007软件后,想要更换其他版本的话,此前需要将office2007卸载掉,不知怎么卸载office2007…

人工智能伦理如何设定,从种群层面看人类的知识积累和进化

前言:9月份中宣部出版局《中国图书评论》对《崛起的超级智能》进行了推荐和评论,对其中阐述的种群知识库扩展观点给予了重点关注。应该说种群知识库扩展是互联网大脑架构不断发展的抽象推论,这个推论对于人工智能及其伦理的建立也应有相应的价…

[转] 三种Python下载url并保存文件的代码

原文 三种Python下载url并保存文件的代码 利用程序自己编写下载文件挺有意思的。 Python中最流行的方法就是通过Http利用urllib或者urllib2模块。 当然你也可以利用ftplib从ftp站点下载文件。此外Python还提供了另外一种方法requests。 来看看三种方法是如何来下载zip文件的&am…

北理课程 - 鸢尾花

刚开始尝试机器学习 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结前言 提示:这里可以添加本文要记录的大概内容&#xff1a…

text 两端对齐 小程序_小程序实现文字两端对齐

我们知道,text-align: justify;对最后一行无效,当有一个段落而最后一行只有两个字时,text-align: justify;的效果是前面N行两端对齐,最后一行居左,这样有利于用户的视觉体验,但是当我们只有一行文本&#x…

python可以这样学读后感_Python基础教程的读后感10篇

《Python基础教程》是一本由Magnus Lie Hetland著作,人民邮电出版社出版的平装图书,本书定价:69.00元,页数:471,文章吧小编精心整理的一些读者的读后感,希望对大家能有帮助。 《Python基础教程》…

光通信的再思考:5G流量爆发下的数据密度革命

来源:未来智库1.投资要件区别于市场的观点:(1)市场对 5G 时代流量爆发的认知不足。市场认为当前大带宽高流量新应用的爆发趋势尚不明显,当前流量增长需求不清。我们认为,5G 时代的流量的爆发将会是数十倍的…

玩家可以输入辅助指令_最后生还者 第二部辅助功能详解 盲人玩家也能玩

顽皮狗首席系统设计师Matthew Gallant,今天在Playstation Blog公开了《最后生还者 第二部》中辅助功能的详情。他们表示从设计之初,他们就希望有更多的粉丝能够体验到这款作品。在《神秘海域4:盗徒末路》的基础上,《TLOU2》提供了…

为什么深度学习如此容易被愚弄?AI研究员正在努力修复神经网络缺陷

来源:nature假设一辆自动驾驶汽车看到停车标志时并没有减速,而是加速驶入了繁忙的十字路口,从而导致了交通事故。事故报告显示,停车标志的表面粘了四个小的矩形标志。这说明一些微小扰动就能愚弄车载人工智能(AI&#…

.net core image怎么保存_C# 将PDF转为多种Image图像文件格式(Png/Bmp/Emf/Tiff)

PDF是一种在我们日常工作学习中最常用到的文档格式之一,但常常也会因为文档的不易编辑的特点,在遇到需要编辑PDF文档内容或者转换文件格式的情况时让人苦恼。通常对于开发者而言,可选择通过使用组件的方式来实现PDF文档的编辑或者格式转换&am…

h5课件制作_PPT新功能!竟然还能用来制作H5

原标题:PPT新功能!竟然还能用来制作H5最近几年随着移动端的快速发展,我们获取信息的途径更加便捷了,我们几乎每天都会刷微博、看朋友圈。而在众多的信息传递中,H5页面成了最受大众欢迎的形式。所谓的H5,简单…

【Python开发】Python 适合大数据量的处理吗?

Python 适合大数据量的处理吗? python 能处理数据库中百万行级的数据吗?处理大规模数据时有那些常用的python库,他们有什么优缺点?适用范围如何?需要澄清两点之后才可以比较全面的看这个问题:1. 百万行级不…