广告
返回顶部
首页 > 资讯 > 数据库 >Oracle数据库入门
  • 1011
分享到

Oracle数据库入门

2024-04-02 19:04:59 1011人浏览 泡泡鱼
摘要

一、Oracle 1、oracle服务 1)OracleDBConsoleorcl Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。 2)OracleOraD

一、Oracle

1、oracle服务

1)OracleDBConsoleorcl

Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。

2)OracleOraDb11g_home1TNSListener

监听器服务,服务只有在数据库需要远程访问的时候才需要。

3)OracleServiceORCL

数据库服务(数据库实例),是Oracle核心服务,该服务是数据库启动的基础,只有该服务启动,Oracle数据库才能正常启动。

启动顺序:OracleOracle_homeTNSListener,OracleServiceORCL,OracleDBConsoleORCL

2、sql*plus

1)常用命令

help[?|topic]

?模糊查询/topic 具体命令

desc[ribe] 查询指定对象的数据结构

如:desc scott.emp

show option 显示SQL*Plus系统变量的值或环境变量的值

如:show user

用户连接命令:

a、conn[ect] conn 用户名/密码@网络服务名 [as sysdba/sysoper]

b、disc[onnect] 断开与当前数据库的连接

c、passw[ord] 修改用户的密码

d、exit 断开与数据库的连接,同时会退出sql*plus

查看系统所有用户:

select username,account_status from dba_users;

查询用户下所有的表:

select table_name from tabs;

select table_name from user_tables;

select tname from tab;

select?*?from?dba_tables?where?owner=‘SCOTT';

2)用户管理指令

忘记管理员密码:

sqlplus/nolog

connect/as sysdba

alter user sys identified by sys

创建新用户:具有DBA权限的用户执行

create user test  identified by 123456

default  tablespace users

temporary tablespace temp

quota 3m on users;

//用户角色

connect Role(连接角色):临时用户,特别是那些不需要建表的用户

resource Role(资源角色):

提供给用户另外的权限以创建他们自己的表、序列、过程、触发器、索引和簇。只可以创建实体,不可以创建数据库结构

dba Role(数据库管理员角色):拥有所有的系统权限,只有DBA才可以创建数据库结构

用户授权:

grant sys_privi | role to user | role | public [with admin option]

sys_privi:表示Oracle系统权限,系统权限是一组约定的保留字。

role:角色。

user:具体的用户名,或者是一些列的用户名。

public:保留字,代表Oracle系统的所有用户。

with admin option:表示可再将权限授予另外的用户。

如:grant  connet,resource to test;为用户test授予连接和开发系统权限

收回权限:

revoke sys_privi | role from user | role | public;

如:revoke resource from test;

对象权限:

grant obj_privi | all column on schema.object to user | role | public [with grant option] | [with hierarchy option]

obj_privi:表示对象的权限,可以是alter、execute、select、update和insert等

role:角色名

user:被授权的用户名

with admin option:表示被授权者可再将系统权限授予其他的用户

with hierarchy option:在对象的子对象(在视图上再建立视图)上授权给用户

如:grant select,insert,delete,update on scott.emp to test; 给用户test授予select、insert表soctt.emp的权限

收回对象权限

revoke obj_privi | all on schema.object from user | role | public cascade constraints

cascade constraints:表示有关联关系权限也被撤销

如:revoke delete,update on scott.emp from test; 从test用户撤销scott.emp表的update和delete

修改用户:就是创建新用户把create关键字替换成alter

被锁住的用户:

alter user test account unlock;

删除用户:

drop user 用户名 [cascade]

cascade:级联删除选项,连同该用户所拥有的对象一起删除

3)常用数据类型

a、字符类型

char(n byte/char) 默认1字节n最大2000 末尾填充空格以达到指定长度

varchar2(n byte/char) 最大长度必须指定最大4000 超过指定长度则报错

b、数字类型

number(p[,s]) 1-22字节

binary_float 32位单精度浮点型

binary_double 64位双精度浮点型

c、时间类型

date 没有分秒和时间区

timestamp 没有时间区

timestamp with local time zone 使用数据库时区

d、大对象类型

blob 二进制文件,支持事务处理

clob 字节字符数据,支持事务处理

nclob unicode数据,支持事务处理

bfile lob地址指向文件系统上的二进制文件,维护目录和文件名,不参与事务,支持只读

4)sequence序列————主要用于提供主键值

a、创建序列需要的权限:

create sequence 或 create any sequence

b、语法:

CREATE SEQUENCE sequence  //创建序列名称

[INCREMENT BY n]   //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

[START WITH n]     //开始的值,递增默认是minvalue 递减是maxvalue

[{MAXVALUE n | NOMAXVALUE}] //最大值

[{MINVALUE n | NOMINVALUE}] //最小值

[{CYCLE | NOCYCLE}] //循环/不循环

[{CACHE n | NOCACHE}]; //分配并存入到内存中

如:

create sequence seq_test

increment by 1    --每次加1个

start with 1      --从1开始计数

nomaxvalue        --不设置最大值

minvalue 1        --最小值

nocycle           --一直累加,不循环

nocache;          --不建缓冲区

c、序列使用

currval: 返回sequence的当前值

nextval: 返回sequence的下一个值

d、注意事项

currval总是返回当前sequence的值,只有在第一次nextval初始化后,才能使用currval,否则会出错

第一次nextval返回的值是初始值:随后的nextval会自动增加定义的increment by值,然后返回增加后的值

使用cache或许会跳号,比如数据库突然不正常down掉,cache中的sequence就会丢失,可以在定义sequence的时候,使用nocache防止这种情况

e、使用触发器实现自增长

create or replace

trigger trg_customers before insert on test for each row 

begin 

select seq_test.nextval into :new.id from dual; 

end; 

5)分页

a、伪列

rowid行标示符和rownum行号 看不到这两个列,只在数据库内部使用

b、三段式分页

select * from (

select rownum rn, t.* from (

select * from t_users

) t where rownum<=页码值*每页行数

) where rn>(页码-1)*每页行数

6)常用函数

concat(X,Y):连接字符串X和Y

length(X):返回X的长度

substr(X,start[,length])返回X的子字串,从start处开始,截取length个字符,缺省length,默认到结尾

ltrim(X[,TRIM_STR]):把X的左边截去trim_str字符串,缺省截去空格

rtim(X[,TRIM_STR]) 把X的右边截去trim_str字符串

abs(X) X的绝对值

ceil(X) 大于或等于X的最小整数值

floor(X) 小于或等于X的最大整数值

round(X[,Y]) X在第Y位四舍五入

power(X,Y) X的Y次幂

add_months(d,n),在某一个日期 d 上,加上指定的月数 n,返回计算后的新日期。d 表示日期,n 表示加的月数。

last_day(d),返回指定日期当月的最后一天。

extract(fmt FROM d),提取日期中的特定部分。fmt 为:YEAR、DAY等。其中 YEAR、MONTH、DAY可以为 DATE 类型匹配,也可以与 TIMESTAMP 类型匹配;但是 HOUR、MINUTE、SECOND 必须与 TIMESTAMP 类型匹配。

to_char(d|n[,fmt]):把日期和数字转换为制定格式的字符串。Fmt是格式串

to_date(X,[,fmt]) 把一个字符串以fmt格式转换成一个日期类型

to_number(X,[,fmt])把一个字符串以fmt格式转换为一个数字

nvl(X,VALUE):如果X为空,返回value,否则返回X  

nvl2(x,value1,value2)如果x非空,返回value1,否则返回value2

3、jdbc连接数据库————同Mysql

驱动类:ojdbc6.jar

类名:oracle.jdbc.driver.OracleDriver

url:jdbc:oracle:thin:@192.168.0.1:1521:orcl

user:scott

passWord:a1s2d3f4


您可能感兴趣的文档:

--结束END--

本文标题: Oracle数据库入门

本文链接: https://www.lsjlt.com/news/43478.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Oracle数据库入门
    一、Oracle 1、oracle服务 1)OracleDBConsoleorcl Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。 2)OracleOraD...
    99+
    2022-10-18
  • Oracle数据库入门(一)
    数据库分类 一、数据库分类 1、小型数据库:Access、FoxBase; 2、中型数据库:Informix、SQL Server、MySQL; 3、大型数据库:SyBase、DB2、Oracle。 二、项目中如何合理地使用数据库,可以依...
    99+
    2015-09-14
    Oracle数据库入门(一)
  • Oracle数据库入门(二)
    Oracle SQL*Plus常用命令 一、SYS用户和System用户 Oracle安装会自动的生成SYS用户和System用户。 1) SYS用户时超级用户,具有最高权限,具有SYSDBA角色,有CREATE DATABASE的权限,...
    99+
    2019-09-18
    Oracle数据库入门(二)
  • 数据库入门
    知识点 △用数据库的原因 1文件操作的复杂度 2同步 3并发处理 4安全 △数据库系统(DBS) 数据库(DB) + 数据库管理系统 (DBS)+ 数据库应用程序 + 数据库管理员 (BDA)+ 最终用户 △数据库管理系统-DBM 网络应用...
    99+
    2021-05-30
    数据库入门
  • Mysql/MariaDB数据库入门
    内容:1、数据库简介以及mysql/mariadb背景介绍2、数据库的一些名词3、mysql的服务结构4、mysql客户端的使用5、数据类型6、SQL语句介绍7、mysql的事务机制一、数据库简介以及mys...
    99+
    2022-10-18
  • access数据库入门教程
    以下是一个简单的Access数据库入门教程:1. 创建数据库:打开Access软件,在“文件”菜单中选择“新建”,然后选择“空白数据...
    99+
    2023-09-13
    access数据库
  • dotConnect for Oracle入门指南(三):创建数据库对象
    【下载dotConnect for Oracle最新版本】dotConnect for Oracle(原名OraDirect.NET)建立在ADO.NET技术上,为基于Oracle数据库的应用程序提供完整的...
    99+
    2022-10-18
  • MongoDB入门培训 | 8周入门NoSQL No.1数据库
    为什么要学好MongoDB ? MongoDB是为满足企业当今的高可用性、可扩展性及满足GDPR法规等需求而设计的新一代文档数据库。凭借灵活的模式和丰富的文档结构,MongoDB能够帮助各种...
    99+
    2022-10-18
  • PHP入门指南:MySQL数据库
    PHP是一种流行的服务器端脚本语言,广泛用于动态网站开发。MySQL是一种广泛使用的开源关系型数据库系统,通常用于存储和管理网站的数据。本文将介绍如何使用PHP连接和操作MySQL数据库。连接到MySQL数据库要连接到MySQL数据库,首先...
    99+
    2023-05-20
    PHP mysql数据库 入门指南
  • node+mysql数据库连接(入门)
    node+mysql的数据库操作; 1 //引入mysql 2 var mysql = require("mysql"); 3 //进行数据库连接设置 4 var connection = ...
    99+
    2014-08-15
    node+mysql数据库连接(入门)
  • 【redis学习】Redis数据库入门
    【本教程目录】1.redis是什么2.redis的作者何许人也3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8.redis数据结构...
    99+
    2022-10-18
  • PHP入门指南:PDO数据库
    PHP是一门非常流行的服务器端编程语言,其灵活性和易用性使其成为Web开发的首选语言之一。在Web应用程序开发中,与数据库交互的过程是非常重要的,PDO(PHP Data Object)是PHP的一个扩展库,用于提供一个通用的接口来与多种关...
    99+
    2023-05-20
    数据库 PHP PDO (PHP Data Objects)
  • Oracle分析函数入门
    Oracle分析函数入门...
    99+
    2020-12-22
    Oracle分析函数入门
  • dotConnect for Oracle入门指南(四):将数据插入表
    【下载dotConnect for Oracle最新版本】dotConnect for Oracle(原名OraDirect.NET)建立在ADO.NET技术上,为基于Oracle数据库的应用程序提供完整的...
    99+
    2022-10-18
  • MySQL入门:如何创建数据库?
    本文详细概述了如何使用不同的方法和工具(包括用于MySQL的命令行,工作台和dbForge Studio)在MySQL中创建数据库。 MySQL是基于SQL的关系数据库管理系统。它是由Oracle C...
    99+
    2023-09-16
    数据库 mysql 服务器 spring 运维
  • MySQL数据库从入门到放弃
    目录MySQL数据库从入门到放弃推荐阅读 MySQL数据库从入门到放弃 193 数据库基础 194 初识MySQL 195 Windows安装MySQL 196 Linux安装MySQL 197 Mac安装MySQL 198 MySQL存...
    99+
    2015-09-16
    MySQL数据库从入门到放弃
  • SQL 入门教程:数据库基础
    目录一、数据库二、表三、列和数据类型四、行五、主键请参阅 目录汇总:SQL 入门教程:面向萌新小白的零基础入门教程 你正在读本 SQL 教程,这表明你需要以某种方式与数据库打交道。SQL 正是用来实现这一任务的语言,因此在学习 SQL 之...
    99+
    2017-01-19
    SQL 入门教程:数据库基础
  • 数据库操作必读:SQLAlchemy入门
    全文约 7991 字,读完可能需要 12 分钟。 环境 :Ubuntu 15.10 64-bit SQLAlchemy是Python的ORM框架,它的理念是:数据库的量级和性能重要于对...
    99+
    2022-10-18
  • 如何进行web.py数据库入门
    如何进行web.py数据库入门,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。web.py是一个非常精巧的web框架,不过其自带的db模块也...
    99+
    2022-10-19
  • 怎样进行PostgreSQL数据库入门
    本篇文章为大家展示了怎样进行PostgreSQL数据库入门,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。安装、设置、创建和开始使用 PostgreSQL 数据库。每...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作