Oracle-05-SQL语句概述、分类&SQL*PLUS概述(初识insert,desc,list,r,del,a,c,n等命令)
一、SQL语句概述
(1)SQL全程是“结构化查询语言(Structured Query Language)”。
SQL是大多数主流数据库系统採用的标准查询语言。
(2)SQL语句的优势:语言结构简单、功能强大、简单易学。
(3)在进行SQL开发是为了更easy的訪问关系数据库,所以SQL可以运行以下几种操作:
①从数据库中查询数据
②向数据库中插入数据
③从数据库中删除数据
④创建和操作数据库对象(如用户、索引、触发器等)
⑤控制对数据库的訪问
⑥更新数据
(4)注意:SQL不是程序设计语言。
它仅仅是提供输入、检索、更改、删除和显示存储在数据库中的数据的语句。
(5)假设以后在使用SQL语句出现错误信息,能够进入http://ora-code.com站点查询信息。就是假设报错信息ORA-XXXXXX。当中XXXXXX是一串数字。可能三位可能五位,所以一旦出现这样的错误信息。能够登录上面站点查询。
二、SQL分类(重点)
(1)数据定义语言(DDL)。如:create,drop,rename…(一旦运行成功,基本不可能恢复原样,没有回旋余地,比方现有A表。将其改名,假设运行成功,无法改变。无法恢复原样)
(2)数据操作语言(DML),如:insert,update,delete…(数据能够回滚)
比方如今登录数据库用户是sys,用例如以下命令查询t表,其内没有数据信息,例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
如今给t表加入数据:
然后查询t表。发现里面有刚才加入的数据:
如今又一次开一个cmd窗体,用新用户lisi登录。查询t表,发现其内没有刚才加入的数据,例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在原sys登录的cmd窗体内继续写commit命令,例如以下图:
然后再去lisi登录的cmd窗体查询t表,发现有新加入的数据。例如以下图:
【总结】假设用DML操作数据后。必须commit,才干保证真正存到数据库内。
(3)数据控制语言(DCL),如:grant,Revoke…
(4)查询语言,如:select…
(5)事务控制语言(Transaction Control,TC)。如:commit,rollback,savepoint…
三、SQL*PLUS概述
1.SQL*PLUS定义,它是一个由ORACLE开发的、能够运行SQL语句的环境,它也是提供了一种连接数据库的直接运行方式。
2.SQL*PLUS特征
它是一个client应用工具。如命令行SQL*PLUS、Oracle中的SQL*PLUS
或iSQL*PLUS他们都能够与数据库管理系统直接通信。
3.假设出现以下界面,就是SQL*PLUS环境。例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
四、显示表结构语法格式:desc表名
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
五、查看缓存中SQL语句的语法格式:l(或者list)
比如,假设先输入select*fromall_users;后回车。会看到全部用户,然后这条命令被存入SQL*PLUS缓存,假设这时候输入l,会出现上一条命令信息,例如以下图:
【注意】将来SQL语句会写非常长。所以须要换行写,例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
方法是输入完第一行后回车,接着输入第二行,假设输入分号则表示结束,这时候若用l查询上一条语句,也可查询到,例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
图中*表示定位在当前行。
六、将缓存中的SQL语句又一次执行一次,格式为:/(或者r)
这事实上是一个快捷操作。
假设写/后回车。则直接执行缓存中的SQL语句。假设写r回车。则先列出缓存中的SQL语句再执行该语句。
七、n命令的使用
假设写的SQL语句出错,能够是使用“n”。这个“n”的意思是设置sql*plus中当前行,“n”就是一个详细的值(如:1,2,3…)。
语法格式:n
比如。写个1回车。则定位到缓存SQL命令中的第1行,写个2回车。则定位到缓存SQL中的第2行
八、删除命令
假设要删除某行。能够使用del命令。
语法格式del n
输入del 2后将缓存中第2行代码删除
九、加入命令
假设如今某一行后面加入一些sql语句,能够使用a(append)。
语法格式:a
比如:先用list查看缓存区命令,然后用a加入命令
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
发现两个命令靠一起了,即student和where连一起了。所以在使用a命令往缓存区加入命令时候敲两个回车,当中第一个回车是a命令必须带的回车,第二个回车是作为新代码的开头被加入到缓存区,例如以下图:
问:假设缓存区有3行SQL命令,须要在第二行加入命令。怎样操作?
答:先list命令将缓存区命令列举出来,然后用n命令,即输入2定位到第2行,然后用a命令在该行后面加入新命令。然后再用list查看一下新命令,最后执行。全步骤例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
十、改动命令
假设要改动sql缓存中的语句。能够使用c(change)命令。
语法格式:c /被改动内容/新内容
(c后面有两个空格)
比如。可用c命令做到部分删除的效果。例如以下图:
先list出缓存区全部命令,然后用n命令定位到第2行,然后用c命令将’%s%’之后命令删除,仅仅要c /or 1=1/就可以,也就是将须要删除的部分替换为空白。注意c后面两个回车。
Oracle-05-SQL语句概述、分类&SQL*PLUS概述(初识insert,desc,list,r,del,a,c,n等命令)的更多相关文章
- sql语句的分类
这些天在看Oracle database 11g SQL开发指南,关于sql语句的分类,感觉有必要记录一下. sql语句主要分五类: DML(DATA MANIPULATION LANGUAGE, 数 ...
- 查看SQL语句执行时间与测试SQL语句性能
查看SQL语句执行时间与测试SQL语句性能 写程序的人,往往需要分析所写的SQL语句是否够优化.是否能提升执行效率,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了 ...
- Oracle数据库SQL语句的分类
1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言,1987年在国际标准组织的支持下成为国际标准.不过各种通行的数据库系统其实在实践过程中都对SQL规范的作了 ...
- Oracle之SQL语句的分类
SQL简介 SQL:结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库 ...
- 【PL/SQL练习】游标cursor :oracle 在执行sql语句时,为sql语句所分配的一个私有的内存区域
隐式游标:一次只能返回一行结果(不需要定义,默认自动建立) 显式游标: 需要开发人员提前定义,可以通过循环的方式处理游标里的sql语句,返回多行结果 隐式游标的属性: sql%rowcou ...
- SQL语句的分类:DQL、DML、DDL、DCL、TCL的含义和用途
MySQL中提供了很多关键字,将这些关键字 和 数据组合起来,就是常说的SQL语句,数据库上大部分的操作都是通过SQL语句来完成.日常工作中经常听到 DML.DDL语句这些名词,使用字母缩写来表达含义 ...
- 使用sql语句创建 表空间 和用户,以及如何彻底删除表空间和用户,使用命令导出和导出数据库
创建表空间有很多种方式,在安装好oracle 11g 后在网站上 https://localhost:1158/em 手动创建也可以,但是没有sql直接生成方便,下面介绍下如何用sql语句直接生成表空 ...
- SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束
创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...
- 使用Hibernate 拦截执行sql语句,并输出sql语句,获取sql语句
重建包名 org.hibernate.type.descriptor.sql 重建类BasicBinder 代码如下 package org.hibernate.type.descriptor.sql ...
随机推荐
- Mac 开发者设置强迫症
Latest commit 2461787 on Mar 1 原文链接 强迫症的 Mac 设置指南 如何配置一个高效的 Mac 工作环境 English Version Table of Conten ...
- 程序员减少bug
1.认真理解需求 2.构思好程序逻辑流程,再编写 3.编写单元测试 4.多进行case测试,做好功能测试 5.互相review代码
- Latex--TikZ和PGF--高级文本绘图,思维绘图,想到--得到!
Latex--TikZ和PGF--高级文本绘图,思维绘图,想到--得到! TikZ和PGF是一种用在TeX上的CLI绘图工具.CLI和GUI是两种常见的绘图方式,前者是所想即所得(WYTIWYG)的, ...
- composer安装第三方的库packagist.org(laravel框架引入第三方库)
建立composer.json composer require phpoffice/phpexcel //安装一个excel扩展库 composer require gregwar/captcha ...
- regAsm的历史问题
regAsm是用来注冊.卸载dll成为通用库的一个工具.关于regAsm的具体资料请參照http://msdn.microsoft.com/en-us/library/tzat5yw6(v=vs.11 ...
- Android-Bug:RecyclerView的item不能横向充满的问题
在使用 RecyclerView 的时候,出现了 item 不能横向充满屏幕的问题, 如下图所示: 解决办法:发现是在使用 Adapter 的时候,在 onCreateViewHolder() 方法的 ...
- 解决fonts.googleapis.com不能访问,导致网页打不开
最近,访问linode.com网站,突然发现网速好慢,老是打不开网页.分析一下网页才知道,原来使用了fonts.googleapis.com 打不开的原因就很明显了,咋办呢?百度啊,百度,最后,终于找 ...
- receiver type *** for instance message is a forward declaration
转自:http://stackoverflow.com/questions/8815200/receiver-type-for-instance-message-is-a-forward-declar ...
- C的面向对象编程
C语言并不支持类这样的概念,但是C仍旧可以使用面向对象的概念. C++中的类,关键在于它的虚函数表.因此,我们要模拟一个能够支持虚函数表的类. 使用C的struct结构,可以模拟类和虚函数. 比如,我 ...
- sqlite遇到database is locked问题的完美解决
这两天在项目中用大强度大频率的方法测试时遇到sqlite报database is locked的问题,分析下来原因是sqlite对数据库做修改操作时会做(文件)锁使得其它进程同一时间使用时会报该错误( ...