Oracle XE版安装与用户操作

这篇具有很好参考价值的文章主要介绍了Oracle XE版安装与用户操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装

安装Oracle数据库

资源

1)OracleXE112_Win64.zip 数据库服务管理平台

2)plsqldeveloper_x64.rar 第三方客户端

Oracle是一家软件公司。这家1977成立于加利福尼亚的软件公司是世界上第一个推出关系型数据管理系统(RDBMS)的公司。

现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。

Orace11g与Oracle 11g XE区别:

Oracle Database 11g Express 是 Oracle 数据库的免费版本,支持标准版的大部分功能,占用内存小,很不错。值得推荐。

  • 11g XE 提供 Windows 和 Linux 版本。
  • 做为免费的 Oracle 数据库版本,XE 的限制是:
    • 最大数据库大小为 11 GB
    • 可使用的最大内存是 1G
    • 一台机器上只能安装一个 XE 实例
    • XE 只能使用单 CPU,无法在多CPU上进行分布处理
安装注意事项
  • 不能存储到中文目录下
  • 记住密码

Oracle 服务

Oracle中的服务

oracle是基于服务数据库系统,只有启动服务后才能使用Oracle数据库

Oracle XE版安装与用户操作

  1. OracleJobSchedulerXE : 是一个外部调度任务服务,负责Oracle中的调度任务。它只有在10.1版之后才可用。一般来说是没用的。
  2. OracleMTSRecoveryService : 当Oracle参与Microsoft Transaction Server的分布式事务时,该事务负责解决有疑问的事务。
  3. OracleServiceXE : 是ORCL库的服务,它负责Oracle和数据库启动的基础。只有在服务启动时,Oracle数据库才能正常启动。
  4. OracleXEClrAgent : 在Windows平台上,Oracle提供CLR集成。由于CLR操作是使用extproc进程运行的,因此通常在单个会话中使用专用(单线程)extproc来完成。这可能不是处理CLR调用的最佳方式。ClrAgent提供了一种多线程机制,因此单个extproc进程可以服务于多个CLR调用。
  5. OracleXETNSListener : 此服务负责侦听传入的连接并将成功的连接传递给数据库引擎。请注意,如果此服务关闭,您将无法远程连接到数据库。现有连接不会受到影响。
启动和停止服务

启动OracleServiceXE和OracleXETNSListener就可以正常使用Oracle数据库了。

  • 控制台下启动和停止Oracle服务器命令
net start OracleServiceXE
net stop OracleServiceXE
  • 服务面板中鼠标右键可停止和启动服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-udiZ6rhv-1634730510516)(https://i.loli.net/2021/10/18/sfWUHzIhgJ2CQnE.png)]

Oracle客户端

sqlplus客户端

Oracle安装后,自带了一个控制台的客户端,叫sqlplus,有了这个客户端,在你维护服务器时至少有可用的客户端了,虽然不好用,但比没有强。

使用sqlplus需要两步

  • 第一步:启动客户端

在控制台中输入sqlplus /nolog 启动客户端,注意此时只是启动了客户端,还没有登录到Oracle。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WLt2oHor-1634730510517)(https://i.loli.net/2021/10/17/aI7cvYzr4yW8Owe.png)]

  • 第二步:登录到Oracle

    在客户端输入conn system/manager as sysdba;登录到oracle

    • conn是连接oracle的命令
    • system是oracle的管理员账户
    • manager是system账户的默认密码,连接本机时可以用任意密码,不信你试试
    • as是关键字,固定写法
    • sysdba是登录的身份,表示系统数据库管理员,该身份具有最高权限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JY3mtduY-1634730510520)(https://i.loli.net/2021/10/17/N2anpQcm9gWIBvZ.png)]

  • 在sqlplus中练习几个常见的命令

  • select * from all_users; -- 查看所有用户
    select * from dba_roles; -- 查看所有角色
    
    plsqldeveloper客户端

    plsqldeveloper是可视化界面。

    Oracle XE版安装与用户操作

    • 在Command windows窗口练习几个常见的命令,与sqlplus客户端对比一下吧
    select * from all_users; --查看所有用户
    select * from dba_roles; --查看所有角色
    
    • plsqldeveloper的SQL缓存
      • plsqldeveloper总是默认缓存最后一条sql语句
      • 使用ed命令打开缓存【可以编辑】
      • 使用 / 执行缓存中的命令
    • 小贴士:Oracle的命令以分号(;)结尾,代表命令完毕并执行,系统同时会把该命令保存在缓存中,缓存中只保存最近执行过的命令,如果重新执行缓存中的命令,直接使用左斜杠符号(/)。如果命令不以分号结尾,该命令只是写入缓存保存起来,但并不执行。
    Oracle中的权限

    系统权限是指执行特定类型的SQL命令的权力,用于控制用户执行的一个或一类数据库操作

    系统权限 作用
    CREATE SESSION 连接到数据库
    CREATE TABLE 建表
    CREATE TABLESPACE 建立表空间
    CREATE VIEW 建立视图
    CREATE SEQUENCE 建立序列
    CREATE USER 建立用户
Oracle中的角色
什么是角色(role)

如果多个用户需要相同的多个权限,那么为每个用户分别赋予多个权限是繁琐的。为此可以将多个权限组合为一个角色,将角色赋予多个用户,就使得每个用户都有了相同的权限。

角色是一组相关权限的集合,使用角色最主要的目的是简化权限管理。

三个标准角色
connect role(连接角色)
  • –临时用户,特指不需要建表的用户,通常只赋予他们connect role.
  • –connect是使用oracle简单权限,这种权限只对其他用户的表有访问权限,包括select/insert/update和delete等。
  • –拥有connect role 的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym)、回话(session)和其他 数据的链(link)
resource role(资源角色)
  • -更可靠和正式的数据库用户可以授予resource role。
  • –resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。
dba role(数据库管理员角色)
  • –dba role拥有所有的系统权限
  • –包括无限制的空间限额和给其他用户授予各种权限的能力。system由dba用户拥有
ql/sql developer 客户端连接三种身份或者说角色
sysoper

即数据库操作员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制。

sysdba

即数据库管理员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制、管理功能、创建数据库。sys用户必须用sysdba身份才能登录,system用户可以用普通身份登录。

normal

即普通用户,权限只有查询某些数据表的数据。默认的身份是normal用户。

Oracle中的用户

MySql和Oracle
  • Oracle:一个项目对应一个用户【一般一个数据库里面有很多用户 用户下面有很多表】
  • MySql:一个项目对应一个数据库

虽然一个Oracle数据库服务器中可以安装多个数据库,但是一个数据库需要占用非常大的内存空间,因此一般一个服务器只安装一个数据库。每一个数据库可以有很多用户,不同的用户拥有自己的数据库对象(比如:数据库表),一个用户如果访问其他用户的数据库对象,必须由对方用户授予一定的权限。不同的用户创建的表,只能被当前用户访问。因此在Oracle开发中,不同的应用程序只需使用不同的用户访问即可。

sysdba角色的用户
  • 用户:sys,密码:change_on_install
  • 用户:system,密码:manager

推荐使用system用户

思考:如果一个公司的数据库账户的密码丢失了,怎么办?

答:登录本机可以任意密码,然后修改用户密码【本机上可以输入任意密码去登录数据库,但是远程不可以】

normal角色的用户scott

同时Oracle为程序测试提供了一个普通用户scott,XE版本默认没有附带scott用户,可自行导入scott用户到oracle中

前提条件:使用system用户登录

导入scott用户

第一步:找到scott.sql脚本

​ 在oracle安装路径下找到scott.sql脚本文件,该文件位于oracle\product\11.2.0\server\rdbms\admin目录下

第二步:使用@导入scott脚本

@C:\oraclexe\app\oracle\product\11.2.0\server\rdbms\admin\scott.sql

第三步:重置密码和登录状态

alter user scott identified by tiger;
alter user scott account unlock;

用户:scott,密码:tiger

该用户下包含四张表,用于学习使用。
  • 部门表:dept
desc dept; --查看dept表结构
名称 类型 描述
1 DEPTNO NUMBER(2) 表示部门编号,由两位数字所组成
2 DNAME VARCHAR2(14) 部门名称,最多由14个字符所组成
3 LOC VARCHAR2(13) 部门所在的位置
select * from dept;
  • 雇员表:emp
desc emp; --查看emp表结构
名称 类型 描述
1 EMPNO NUMBER(4) 雇员的编号,由四位数字所组成
2 ENAME VARCHAR2(10) 雇员的姓名,由10位字符所组成
3 JOB VARCHAR2(9) 雇员的职位
4 MGR NUMBER(4) 雇员对应的领导编号,领导也是雇员
5 HIREDATE DATE 雇员的雇佣日期
6 SAL NUMBER(7,2) 基本工资,其中有两位小数,五倍整数,一共是七位
7 COMM NUMBER(7,2) 奖金,佣金
8 DEPTNO NUMBER(2) 雇员所在的部门编号
select * from emp;
  • 工资等级表:salgrade
desc salgrade; --查看salgrade表结构
名称 类型 描述
1 GRADE NUMBER 工资的等级
2 LOSAL NUMBER 此等级的最低工资
3 HISAL NUMBER 此等级的最高工资
select * from salgrade;
  • 工资表:bonus
desc bonus; --查看bonus表结构
名称 类型 描述
1 ENAME VARCHAR2(10) 雇员姓名
2 JOB VARCHAR2(9) 雇员职位
3 SAL NUMBER 雇员的工资
4 COMM NUMBER 雇员的奖金
select * from bonus;
自定义用户

在开发项目时,需要为项目创建用户

创建用户
  • 语法:CREATE USER 用户名 IDENTIFIED BY 密码(口令) [ACCOUNT LOCK/UNLOCK]

  • CREATE USER GPB IDENTIFIED BY 123 ACCOUNT LOCK; -- 账户不能数字什么的开头
    
加锁/解锁用户
  • 语法:ALTER USER 用户名 ACCOUNT LOCK/UNLOCK;

  • ALTER USER GPB ACCOUNT UNLOCK;
    
修改密码
  • 语法:ALTER USER 用户名 IDENTIFIED BY 新密码(新口令);

  • ALTER USER GPB IDENTIFIED BY 123456;
    
删除用户
  • 语法:DROP USER 用户名

  • DROP USER GPB;
    
用户的角色

尽管用户成功创建,但是还不能正常的登录Oracle数据库系统,因为该用户还没有任何权限。如果用户能够正常登录,至少需要CREATE SESSION系统权限。一般情况下,一个普通的用户(如scott),拥有CONNECT和RESOURCE两个角色即可进行常规的数据库开发工作。

授予权限

语法:GRANT角色|权限 TO 用户(角色)

GRANT CONNECT TO TOM;
GRANT RESOURCE TO TOM;

赋予TOM用户Connect角色和Resource角色后,jerry用户就可以正常开发工作了。

回收权限

REVOKE 角色|权限 FROM 用户(角色)

REVOKE CONNECT FROM TOM;
REVOKE RESOURCE FROM TOM;
-- 写一起
GRANT CONNECT, RESOURCE,DBA TO TOM;
REVOKE DBA FROM TOM;
授权其他用户访问表

语法:grant 权限 on 表 to 用户

eg:scott用户的dept表授权给kaifamiao用户

grant all on dept to kaifamiao;

eg:kaifamiao 用户查看scott用户的dept表

select * from scott.dept;

提示:必须写用户.表名,例如本例中的scott.dept;

请输入用户名:  SYSTEM                            
输入口令:                                          
连接到:                                       
Oracle Database 11g Express Edition Release                                      
SQL> grant all on kaifamiao.infos to scott;                                 
授权成功。   
SQL> exit;                                 
从 Oracle Database 11g Express Edition Relea                                          
D:\Tool\cmder>sqlplus                                                                 
SQL*Plus: Release 11.2.0.2.0 Production on                                     
Copyright (c) 1982, 2014, Oracle.  All righ                                         
请输入用户名:  scott                             
输入口令:                                                                             
连接到:                                       
Oracle Database 11g Express Edition Release                                    
SQL> select * from infos;                  
select * from infos                        
              *1 行出现错误:                                 
ORA-00942: 表或视图不存在                                 
SQL> select * from scott.infos;            
select * from scott.infos                  
                    *1 行出现错误:                                 
ORA-00942: 表或视图不存在                                                                         
SQL> select * from kaifamiao.infos;                                    
未选定行                                          
SQL>                                       
命令小结
-- 查看数据库的版本
SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE    11.2.0.2.0      Production
TNS for 64-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production

-- 单行注释
/**
多行注释
*/

-- 创建用户
语法:CREATE USER 用户名 IDENTIFIED BY 口令 [ACCOUNT LOCK|UNLOCK]
eg:  CREATE USER LZY IDENTIFIED BY 123 ACCOUNT UNLOCK;

-- 赋于用户数据库角色(CONNECT角色|RESOURCE角色|DBA角色)
语法:GRANT 角色|权限 TO 用户
eg:  GRANT CONNECT, RESOURCE, DBA TO LZY;

-- 回收权限的语法
语法:REVOKE 角色|权限 FROM 用户
eg:  REVOKE DBA FROM LZY;

-- 修改密码 
语法:ALTER USER 用户名 IDENTIFIED BY 新密码
eg:  ALTER USER LZY IDENTIFIED BY 456;

-- 修改用户处于锁定(非锁定)状态
eg: ALTER USER LZY ACCOUNT LOCK;

-- dual虚拟表(dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。我们可以用它来做很多事情。)
SELECT SYSDATE,SYSTIMESTAMP FROM dual; -- 获得系统时间
SELECT SYS_CONTEXT('USERENV','TERMINAL') FROM dual;-- 获得主机名

select * from all_tables where owner='SCOTT'-- TEST为用户名,用户名必须是大写。

-- 查看当前登录的用户的表:
select table_name from user_tables;

Oracle数据类型

部分常用数据类型
类型 含义
CHAR(length) 存储固定长度的字符串。参数length指定了长度,如果存储的字符串长度小于length,用空格填充。默认长度是1,最长不超过2000字节。
VARCHAR2(length) 存储可变长度的字符串。length指定了该字符串的最大长度。默认长度是1,最长不超过4000字符。
NUMBER(p,s) 既可以存储浮点数,也可以存储整数,p表示数字的最大位数(如果是小数包括整数部分和小数部分和小数点,p默认是38位),s是指小数位数。
DATE 存储日期和时间,存储纪元、4位年、月、日、时、分、秒,存储时间从公元前4712年1月1日到公元后4712年12月31日。
TIMESTAMP 不但存储日期的年月日,时分秒,以及秒后6位,同时包含时区。
CLOB 存储大的文本,比如存储非结构化的XML文档
BLOB 存储二进制对象,如图形、视频、声音等。

小贴士:

  • MySql的DATE:年月日

  • DATETIME:年月日时分秒

  • MySQL字符串:varchar类型

  • Oracle字符串:varchar2:类型

问题
  • char 和 varchar2 的区别
    • char:固定长度 你给多大 他就存多大 多余的空格补上
    • varchar2:可变长度 你给多少 他用多少 多了不用 少了存不进去
    • 两者都存字符串
NUMBER类型示例
格式 输入的数字 实际的存储
NUMBER 1234.567 1234.567
NUMBER(6,2) 123.4567 123.46
NUMBER(4,2) 12345.67 输入的数字超过了所指定的精度,数据库不能存储
日期类型

对于日期类型,可以使用sysdate内置函数可以获取当前的系统日期和时间,返回DATE类型,用systimestamp函数可以返回当前日期、时间和时区。

创建表和约束
创建infos表(学生表)
CREATE TABLE INFOS
(
  STUID VARCHAR2(7) NOT NULL,       --学号 学号=‘S’+班号+2位序号 
  STUNAME VARCHAR2(10) NOT NULL,  --姓名
  GENDER VARCHAR2(4) NOT NULL,     --性别  
  AGE NUMBER(2) NOT NULL,           --年龄
  SEAT NUMBER(2) NOT NULL,          --座号
  ENROLLDATE DATE,                    --入学时间
  STUADDRESS VARCHAR2(50) DEFAULT '地址不详',  --住址
  CLASSNO VARCHAR2(4) NOT NULL                 --班号 班号=学期序号+班级序号  
)
/
ALTER TABLE INFOS ADD CONSTRAINT PK_INFOS PRIMARY KEY(STUID)
/
ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_GENDER  
CHECK(GENDER = '男' OR GENDER = '女')
/
ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_SEAT 
CHECK(SEAT >=0 AND SEAT <=50)
/
ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_AGE  
CHECK(AGE >=0 AND AGE<=100)
/
ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_CLASSNO  
CHECK((CLASSNO >='1001' AND CLASSNO<='1999') OR 
(CLASSNO >='2001' AND CLASSNO<='2999'))
/
ALTER TABLE INFOS ADD CONSTRAINT UN_STUNAME UNIQUE(STUNAME)
/

解析:

  • 创建了infos表
  • STUID列添加了主键约束
  • GENDER添加了check约束,只允许填写“男”和“女”
  • SEAT列添加了check约束,只允许在0到50之间
  • AGE列添加了check约束,只允许在0到100之间
  • CLASSNO列添加了check约束,只允许在2001到2999之间
创建scores表(成绩表)
CREATE TABLE SCORES
(
     ID NUMBER ,                                 --ID  
     TERM VARCHAR2(2),					     --学期 S1或S2
	STUID VARCHAR2(7) NOT NULL,			--学号
	EXAMNO VARCHAR2(7) NOT NULL,			--考号 E+班号+序号	
	WRITTENSCORE NUMBER(4,1) NOT NULL,	--笔试成绩
	LABSCORE NUMBER(4,1) NOT NULL		     --机试成绩
)
/
ALTER TABLE SCORES 
	ADD CONSTRAINT CK_SCORES_TERM CHECK(TERM = 'S1' OR TERM ='S2')
/
ALTER TABLE SCORES 
	ADD CONSTRAINT FK_SCORES_INFOS_STUID FOREIGN KEY(STUID) REFERENCES INFOS(STUID)  
/

解析:

  • TERM列添加了check约束,其值为S1或者S2
  • STUID列设置为外键列,引用了INFOS表的STUID列

创建 emp和dept表:

D:\Tool\cmder>sqlplus
SQL*Plus: Release 11.2.0.2.0 Production on 星期一 1018 20:26:17 2021
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
请输入用户名:  kaifamiao
输入口令:
连接到:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> CREATE TABLE DEPT(deptid int, deptname varchar2(20), deptaddr varchar2(13), datetime date);
表已创建。
SQL> ALTER TABLE DEPT ADD CONSTRAINT pk_deptid PRIMARY KEY(deptid);
表已更改。
SQL> CREATE TABLE EMP(empid int, deptid int, empname varchar2(20), job varchar2(20), manager int, entrydate date, salary float, bonus float);
表已创建。
SQL> ALTER TABLE EMP ADD CONSTRAINT pk_empid PRIMARY KEY(empid);
表已更改。
SQL> ALTER TABLE EMP ADD CONSTRAINT fk_deptid FOREIGN KEY(deptid) REFERENCES DEPT(deptid);
表已更改。
SQL>

CRUD操作

1、数据操纵语言(DML):用来操纵数据库中数据的命令。包括:select、insert、update、delete。 
2、数据定义语言(DDL):用来建立数据库、数据库对象和定义列的命令。包括:create、alter、drop。 
3、数据控制语言(DCL):用来控制数据库组件的存取许可、权限等的命令。包括:grant、deny、revoke。 
4、其他语言元素:如流程控制语言、内嵌函数、批处理语句等。
MySql和Oracle中几个Sql的差距
日期值
  • MySql中插入日期:insert into tablename (date) values('2021-10-10'), values('2000-10-01');
  • Oracle:insert into tablename (date) values(to_date(‘2021-10-10 13:13:13’,’YYYY-MM-DD HH24:MI:SS’));
    • Oracle不可连着插值 日期用 to_date 函数处理插入 年月日时分秒
自增长
  • MySql:自带 auto_increment 自增约束

  • Oracle:得自定义一个序列(Sequence)来定义自增长

    CREATE SEQUENCE myseq;
    SELECT myseq.nextval from dual;-- 自增的序号【序号加一】
    select myseq.currval from dual;-- 当前的序号【序号不变】
    
插入数据
INSERT INTO "INFOS" VALUES ('s100102', '林冲', '男', '22', '2', TO_DATE('2009-08-09 06:30:10', 'YYYY-MM-DD HH24:MI:SS'), '西安', '1001');
INSERT INTO "INFOS" VALUES ('s100104', '阮小二', '男', '26', '3', TO_DATE('2021-10-18 21:16:10', 'YYYY-MM-DD HH24:MI:SS'), '', '1001');

解析:

  • insert语句默认把数据插入到了缓存中,没有直接插入到库中。
  • commit是把用户操作(添加、删除、修改操作)提交,只有提交操作后,数据才能真正更新到表中,否则其他用户无法查询到当前用户操作的结果。
  • 它不能和mysql一样多条数据一起插入,只能一条一条的insert
查询数据
SELECT STUNAME,GENDER,AGE,STUADDRESS 
FROM INFOS 
WHERE GENDER='男' ORDER BY AGE

尝试一下分页查询

SELECT * FROM 
( 
  select rownum as r ,t.* from dept t where rownum<=4
)
where r > 2
数据更新
SQL> UPDATE INFOS SET CLASSNO='1002',STUADDRESS='山东莱芜' 
WHERE STUNAME='阮小二'; 
1 rows updated 
SQL> commit;
删除数据
SQL> DELETE FROM INFOS WHERE STUID='s100102'; 
1 ROW DELETED 
SQL> COMMIT;

除了Delete语句删除数据外,truncate语句也可以删除语句

truncate table infos;

TRUNCATE命令可以把表中的所有数据一次性全部删除。

TRUNCATEDELETE都能把表中的数据全部删除,他们的区别是:文章来源地址https://www.toymoban.com/news/detail-468563.html

  • TRUNCATE是DDL命令,删除的数据不能恢复;DELETE命令是DML命令,删除后的数据可以通过日志文件恢复。
  • 如果一个表中数据记录很多,TRUNCATE相对DELETE速度快。
  • 由于TRUNCATE命令比较危险,因此在实际开发中,TRUNCATE命令慎用。

尝试一下分页查询

SELECT * FROM 
( 
  select rownum as r ,t.* from dept t where rownum<=4
)
where r > 2
数据更新
SQL> UPDATE INFOS SET CLASSNO='1002',STUADDRESS='山东莱芜' 
WHERE STUNAME='阮小二'; 
1 rows updated 
SQL> commit;
删除数据
SQL> DELETE FROM INFOS WHERE STUID='s100102'; 
1 ROW DELETED 
SQL> COMMIT;

除了Delete语句删除数据外,truncate语句也可以删除语句

truncate table infos;

TRUNCATE命令可以把表中的所有数据一次性全部删除。

TRUNCATEDELETE都能把表中的数据全部删除,他们的区别是:

  • TRUNCATE是DDL命令,删除的数据不能恢复;DELETE命令是DML命令,删除后的数据可以通过日志文件恢复。
  • 如果一个表中数据记录很多,TRUNCATE相对DELETE速度快。
  • 由于TRUNCATE命令比较危险,因此在实际开发中,TRUNCATE命令慎用。

到了这里,关于Oracle XE版安装与用户操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux系统下操作Oracle数据库

    Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种

    2023年04月08日
    浏览(51)
  • C# Dapper 操作Oracle数据库

    nuget安装内容   1.配置连接字符串 OracleConnectionString这个可用  2.读取配置文件类 3.Dapper数据库操作类  4.操作数据实例 

    2024年02月10日
    浏览(46)
  • Python优雅地操作Oracle数据库

    方案一: 直接套用脚本,需可以看懂一些脚本逻辑 改代码中 类名为 OracleConnector,它可以同时连接多个 Oracle 数据库,并提供执行增删改查操作的方法。 以下是代码解释: 这个封装类使得可以同时连接多个 Oracle 数据库,并在它们上执行增删改查操作。而在执行非查询操作时

    2024年02月03日
    浏览(38)
  • Linux链接oracle数据库启动——操作步骤

    原本的画面会变为 接着请输入 输入 另外停止数据库的指令如下:   回到终端机模式,输入:ps -ef|grep ora_ (作用是:查看是否有Oracle的进程,如果有,大多数情况说明启动了。) 输入:$ lsnrctl status (作用是:检查监听是否启动。) 以下为没有启动。 如果没有启动,可以输入:$

    2024年02月04日
    浏览(66)
  • Oracle rac环境的数据库导入操作记录

    搞某一大项目的性能测试,将Oracle数据库dmp文件(211G)导入性能测试环境。 因为Oracle部署方式为rac,数据存储到共享磁盘。但由于对rac了解不足,这个过程中犯了两个错误: ① 表空间、临时表空间没有创建到共享磁盘,而是创建到了数据库服务本地磁盘; ② 发现应该创建

    2024年02月08日
    浏览(42)
  • Oracle/PL/SQL数据库基础操作(持续更新)

            PL/SQL不是一个独立的编程语言;它是Oracle编程环境中的工具。 SQL* Plus是一个互动的工具,它可以在命令提示符下键入SQL和PL/SQL语句。这些命令发送到数据库进行处理。语句处理之后将结果发回,并在屏幕上显示出来。 分类 命令 DDL create:创建;drop:删除;alter:

    2024年02月09日
    浏览(59)
  • Linux下连接Oracle数据库并进行一系列操作

    操作Oracle要确保服务器上已经安装了Oracle数据库 1.连接到有Oracle数据库的服务器 ssh 172.16.100.201 (服务器IP)如图 2.根据提示,输入服务器root密码,输入无误即可连接。 切换到Oracle数据库 su - oracle 3.切换成功后会显示Oracle用户,如:[oracle@cicro201 ~]$ 4.切换到sqlplus操作 切换成功

    2024年02月08日
    浏览(59)
  • Mysql数据库用户操作

    # Mysql数据库用户操作 ## 1.1创建用户 ```shell create user ‘nz’ identified by ‘123456’ # hzm:用户账号,123456:密码 create user ‘nz’@’%’ identified by ‘123456’ #所有ip都可用账号 create user ‘nz’@’localhost’ identified by ‘123456’ #本地可用账号 create user ‘nz’@’192.168.12.1’ identified

    2024年02月16日
    浏览(53)
  • Oracle数据库安装及配置

    下载地址:(Database Software Downloads | Oracle) 下载好像需要Oracle账号,只要有邮箱就能注册。 解压好下载的压缩包,找到setu.exe 点击安装。 根据安装程序提示点击下一步 可以创建一个新的Windows用户来使用Oracle,也可以使用虚拟机来安装Oracle 这里口令的格式要求至少一个大写

    2024年02月05日
    浏览(45)
  • docker安装Oracle数据库

    拉取阿里云的oracle镜像 查看获取的镜像 启动docker容器 默认启动容器方式 持久化启动方式如下: --restart 表示docker重启是容器自动重启。 --mount 表示要将Host上的路径挂载到容器中。 查看容器,容器状态up表示在运行状态 进入容器 切换到root账户(默认进入之后是oracle账户)

    2024年02月16日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包