oracle使用笔记总结_姹紫_嫣红的博客-程序员秘密

技术标签: 数据库RDB  

Oracle使用命令及理解

1.     Oracle登录

使用sqlplus 用户名/密码@数据库名 (as sysdba)

有时候登录不了,则用最高级

Sqlplus /  as sysdba

然后用select username from dba_users;查看是否存在该用户;

Alter user username identified by 密码;//修改该用户的密码;退出重新登录

或者有时候登录时,显示用户被锁定,则运行:

Alter user username account unlock;

http://blog.csdn.net/zhangyingjie09/article/details/40481229/

http://www.cnblogs.com/xwdreamer/archive/2011/07/05/2296991.html

2.     数据库操作语言SQL

DDL、DML、DCL、

注:SQL中关键字、表名和字段名大小写不敏感,但是密码敏感。

2.1DDL:

1.     创建表:

Create tablestudent(name varchar2(20),age number(3));

2.     删除表

Drop table tablename;

3.     插入数据

Insert into student values(‘Tom’,13);

4.     删除表中数据

Delete tablename;或者delete from tablename;

5.     查看表结构:

Desc tablename;或者describe tablename;

2.2DML查询

1.Select * from tablename;

Select ziduan from tablename;

2.可以使用表达式:

Select ziduan,ziduan*12 from tablename;

3.||把字段和文本或其他表达式的连接形成新的字符串;

Select ‘姓名:’||name,’的年龄为:’age from student;

1.     as 取别名

2.     distinct去除重复行

select distinct ziduan from tablename;

//作用范围:后面所以字段的组合

3.     orderbyziduan,ziduan1;排序 desc 降asc升,

4.     where  //select * from student where age >12;

5.     select* from student where age >=20 and age <=39;

3.    Oracle数据类型

1)     char//2000byte、varchar2、long、number(m,n)、Date//to_date(‘2004-10-16’,’yyyy-mm-dd’)、timestamp

4.    oracle用户

SyS用户、system、Scott;

创建新用户:

Create user username identified by passwd;

Sqlplus “sys/[email protected] as sysdba”//以DBA身份登录

或者

Sqlplus /nolog

Connect sys/[email protected] as sysdba;

create user spring identified by 123456 defaulttablespace users quota 40M on users;

//未被授予任何权限

Grant create session to spring;//使用户可以用于登录

//授权时除了用DBA用户还可以使用system

修改密码;

Alter User spring identified by 123;

Alter user spring account lock;//锁定

Alter user spring account unlock;//解锁

Alter user spring default tablespace example;//修改用户表空间

Alter user spring quata 60M on users;

Alter user

Drop user username [cascade];

//当用户名下有数据库对象时,必须用cascade参数做级联删除;

存储用户信息的数据库字典视图为:

All_user:当前数据库所有用户的用户名、用户ID及创建时间信息;

Dba_users:包含当前数据库所有用户的详细信息,用户名、用户ID、密码验证方式、账户状态、锁定时间、密码过期时间、默认及临时表空间;

User_users:包含当前用户的详细信息;

Oracle中类似mysql中limit 2的查询实现:

权限管理包括:特定数据库的连接、创建表或视图等数据库对象,查询数据、插入/更新/删除数据等操作

用户在进行数据操作时先验证该用户是否有执行该操作的权限。分系统权限(system_privilege用户权限()

Tabs表中存储了数据库中的表信息;

Desc tabs查看tabs的字段情况;

Select table_name from tabs;//查看数据库中有哪些表;

一些操作实践:

5.    查看数据空间表情况

查看某用户下的数据库空间中的表情况

从all_tables表中查找;先desc all_tables;

Select table_name from all_tables where owner=’SYS’;

//注意区分大小写

6.    Oracle导入.dmp

命令行:imp user/[email protected] file=”” full=y

最后写在后面的实践的一些小内容:

1)       登录

sqlplussys/admin as sysdba

2)       创建表空间

create tablespace space1 datafile'D:\oracle\test\envir.dbf' size 3072M autoExtend on;

//注意space1是新建的表空间的名字,目录D:下的oracle和test文件夹必须存在。

http://www.cnblogs.com/psforever/p/3929064.html

3)       windows中oracle数据库重启

命令行中如下输入关闭数据库

set ORACLE_SID=你的数据库SID名字

sqlplus/nolog

SQL>connect / as sysdba

SQL>shutdown immediate

SQL>exit

命令行中如下输入启动数据库

setORACLE_SID=你的数据库SID名字

sqlplus/nolog

SQL>connect / as sysdba

SQL>startup

SQL>exit

4)       Oracle远程连接要配置

https://wenku.baidu.com/view/029f6665783e0912a2162ab2.html

5)       Oracle数据库全库导入,要保证数据库中为空;

6)       Oracle查询表命令

select *from tabs;(查看自己创建的表或者视图)

https://zhidao.baidu.com/question/324875231.html

7)       执行select语句时显示:未选定行

Reason:未选定行,是指符合你的查询条件的记录数为0出现这种状况

Resolution:

1你需要检查一下你的表中是否存在你要查的记录;

2如果你确定表中存在你要查的记录,你就需要检查你的查询语句是否正确

7.    Q&A

(1)  ORACLE 如何让拥有DBA权限的用户没有数据导入权限(如何用SYS用户撤销SYSTEM用户的数据导入权限)

CONNECT / AS SYSDBA
REVOKE IMP_FULL_DATABASE FROM DBA;

(2)  oracle数据字典

https://zhidao.baidu.com/question/488107242.html

http://blog.csdn.net/yangaming/article/details/7971337

8.    使用Oracle时要注意的

1)       用超级用户登录Oracle时(sqlplus / as sysdba),可以在dba_tables表中查看当前数据库实例下的所有用户即所有表空间中的表信息;

2)       Connname/pw 登录Oracle数据库实例时,可以在all_tables表中查看当前用户的表和有权限的其他用户的表;而user_tables表中存储的是当前用户(创建)的表;

3)       Oracle数据恢复是中文乱码,ultraedit打开时默认的字符编码选用了中文简体gbk,在ultraedit下面选择utf-8格式,中文完美显示,然后全选复制到oracle的sqlplus命令行下,粘贴-等待-回复成功;

4)       Oracle数据库中不可恢复的删除数据表中的数据

truncate table tablename;

//特点:快速,不可恢复

5)       oracle命令行下导入sql文件的数据:

在sqlplus命令行下输入@/目录/test.sql

6)       Oracle中as的用法

在Oracle中as关键字不能用于指定表的别名,在Oracle中指定表的别名时只需在原有表名和表的别名之间用空格分隔即可,但可以用于指定列的别名,但在存储过程中如果列的别名与原有列名相同,在运行时会报错(编译时不会出错),其他情况下列的别名可以与列名本身相同。

7)       Oracle中获取date字段的日期部分

To_char(column_name,’yyyy’)

https://zhidao.baidu.com/question/215323289.html

9.    Oracle时间类型的转换

使用方法to_char(‘time’,’YYYY-MM-DD HH24:MI:SS’)

//转换为char类型,其中time是一个时间类型的字段(maybe其它也可以)

To_date(‘char’,’YYYY-MM-DD HH24:MI:SS’)

//转换为date类型的数据,其中‘char’是非时间类型的数据;

使用Oracle遇到的一些问题

[Err] ORA-00905: missing keyword

检查sql语句是否正确,该有的select from  table join on 等关键字是否齐全;

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/SONGCHUNHONG/article/details/77851545

智能推荐

长虹linux电视安装软件下载,长虹电视怎么安装第三方软件?一个方法教你搞定..._郑自春的博客-程序员秘密

在近些年的智能电视行业发展中,长虹电视品牌无论是国内的销量还是海外的成绩,都成为了当代智能电视的标杆产品, 而智能电视只有安装第三方软件才能满足我们点播影视资源和各个卫视的电视直播,而用过长虹电视的用户在安装第三方软件的会遇到很多困难,下面教大家如何用长虹电视安装软件。众所周知,虽然长虹电视自带资源不算匮乏,但是作为用户而言希望能够拓展更多的第三方资源,无法满足我们观影的需求,已经购买长虹电视的用...

lightOJ 1002 country roads (最短路算法的拓展变式)_^Rely!-的博客-程序员秘密

lightOJ 1002 Country Roads 单源最长路径怎么求 ?当然就是把单源最短路径改过来就行了.那么,其他涉及边的状态转移的问题呢?是否也能用最短路算法魔改而成?答案是肯定的.题目大意给定一张无向图和一个终点,定义一个点到终点的权为这个点到终点的所有路径中长度最大的边的最小值.如图,点0到4的路径有三条,它们的路径上的边权最大值分别是8,9,7,取最小,输出7题目分析...

CentOS 7.2.1511软件包下载_成长Bar的博客-程序员秘密

CentOS 7.2.1511软件包下载        当安装的CentOS 7.2.1511是最小版,可能需要安装一些其他的软件,这个时候就需要对应版本的软件安装包了。CentOS 7.2.1511软件包下载位置为:http://vault.centos.org/7.2.1511/updates/Source/SPackages/

数据可视化之matplotlib实战:plt.bar() barh()函数 绘制堆积图_超级大洋葱806的博客-程序员秘密

import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as np# 防止乱码mpl.rcParams["font.sans-serif"] = ["SimHei"]mpl.rcParams["axes.unicode_minus"] = False# 生成数据x = [1,2,3,4,5]y1 = [6,10,4,5,1]y2 = [2,6,3,8,5]# 生成堆积柱状图plt.bar(x,y1,a

Apache CXF 和 Spring 开发RESTful Web Service 2_weixin_34082854的博客-程序员秘密

2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; ...

随便推点

Excel VBA UserForm用户窗体中添加按钮,并进行选择_excel userform_UHLJH的博客-程序员秘密

1、插入一个用户窗体需要在用户窗体中加入按钮的,则需要打开“工具箱”插入控件按钮2、代码编写(1)、首先在sheet中添加一个按钮,来显示用户窗体,查看效果Private Sub CommandButton1_Click() UserForm1.ShowEnd Sub鼠标单击CommandButton1出现如下窗口,这是未对窗口进行任何代码编写的效果。(2)、在用户窗体中编写代码,打开编写界面两个主要函数Private Sub UserForm_Initialize(

宿舍床位智能分配_假设需要开发一款软件用于学校宿舍的床位分配,根据你的想法提出关于床位分配_寒江雪ing的博客-程序员秘密

一、硬性规则和软性规则(分配原则)硬性规则:集中原则:学院、年级、专业、班级集中,方便管理。分散原则:同地区、同民族学生分散,体现我校特色。床位利用率最高原则,减少资源浪费。软性规则:    实施个性化宿舍分配,根据大学生生活习惯、爱好等个性特征分配宿舍。主要因素:作息时间、打游戏、经济条件(生活费)、运动、是否来自外省、有无住校经历、个人卫生、性格特点等。二、基于贪心算法的宿舍床位分配算法   ...

如何将单元格中的数据拆分多行_霄永梓的博客-程序员秘密

如何将单元格中的数据拆分多行需求把J列中包含多条数据的单元格进行拆分成多行,一个单元格只包含一条数据,其他列的数据重复解决方案复制j2单元格中两个数字之间的空格,替换:查找内容为你复制的空格,替换内容为:alt+10—-全部替换(alt+10操作方法是:按住键盘alt键,然后先后按小键盘1再按0,松手就ok)然后复制到word中再复制回来

Windows Live Writer博客草稿迁移的一种解决方案_weixin_30252709的博客-程序员秘密

作为一个苦逼的码农,喜欢写博客做总结是很正常的事,写博客写的久的人都接触过各种客户端工具,最流行的就是Windows Live Writer了。 作为一个苦逼的码农,换电脑也是很经常的事,经常会出现一篇博客写到一半电脑就换了另一台。 我的博客一篇一般都是写一些攒着一起发,但是碰到换电脑的情况就比较苦逼了,经过研究发现Windows Live Writer是通常将博客日志文件以二进...

Red5+SpringMVC整合(RTMP+HTTP)搭建你的直播服务器_rtmp spring_is丶Allen的博客-程序员秘密

Red5的主要功能和Macromedia公司的FMS类似,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器。它由Java语言编写,使用RTMP作为流媒体传输协议,这与FMS完全兼容Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框

两个Activity通信&&startActivityForResult的使用_yao伟斌的博客-程序员秘密

假设现在有两个Activity:MainActivity和OtherActivity,