Oracle基础学习

文章目录

  • 1. oracle数据库安装
  • 2. sqlplus连接数据库方式
  • 3. 创建用户信息
  • 4. 基本概念
  • 5. 基本SQL语句
  • 6. Springboot开发

1. oracle数据库安装

安装教程
安装包地址

2. sqlplus连接数据库方式

无用户信息登录
Oracle基础学习_第1张图片
使用用户信息登录
Oracle基础学习_第2张图片

登录最高权限管理员,如果不加上as sysdba,就会一直报错(ORA-28009: connection as SYS should be as SYSDBA or SYSOPER)
Oracle基础学习_第3张图片
无用户登陆后,切换登录连接
Oracle基础学习_第4张图片

3. 创建用户信息

创建新用户
Oracle基础学习_第5张图片
为新用户授权连接数据库
在这里插入图片描述
锁住或释放用户
Oracle基础学习_第6张图片

4. 基本概念

总结:解释数据库、表空间、用户、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉的使用权是哪个用户,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。

数据库实例
一个数据库可以有n个实例,一个数据库实例只能装载一个数据库。
用户
用户是在实例下建立的。不同实例可以建相同名字的用户。
表空间
一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。
每个数据库至少有一个表空间(称之为system表空间)。
数据文件(dbf、ora)
数据文件是数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。

注: 表的数据,是有用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。
··Oracle基础学习_第7张图片

5. 基本SQL语句

数据库信息查询

# 查询当前数据库名:
select name from v$database;

# 查询当前数据库实例名:
select instance_name from v$instance;

表空间信息查询

# 创建表空间语法:
# Create TableSpace 表空间名称 DataFile 表空间数据文件路径 Size 表空间初始大小 Autoextend on
create tablespace db_test datafile 'D:\oracle\product\10.2.0\userdata\db_test.dbf' size 50m autoextend on;

# 查看已经创建好的表空间:
select default_tablespace, temporary_tablespace, d.username from dba_users d

用户信息查询

# 创建新用户:
# CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 表空间(默认USERS) TEMPORARY TABLESPACE 临时表空间(默认TEMP)
CREATE USER utest IDENTIFIED BY utestpwd DEFAULT TABLESPACE db_test TEMPORARY TABLESPACE temp;

# 有了用户,要想使用用户账号管理自己的表空间,还得给它分权限:
GRANT CONNECT TO utest; GRANT RESOURCE TO utest; GRANT dba TO utest;--dba为最高级权限,可以创建数据库,表等。

# 查看数据库用户:
select * from dba_users;

表信息查询

# 查询当前数据库下的所有表
select * from all_tables where owner = 'TEST';


# 当未显式指定user_name时,此时所创建的表会默认放在当前登录的用户上面
# 当未显式指定tablespace_name时,此时所创建的表会默认放在指定用户的默认表空间中。
CREATE TABLE user_name.table_name (
    column1 datatype [constraints],
    column2 datatype [constraints],
    column3 datatype [constraints],
    ...
    table_constraints
) TABLESPACE tablespace_name;

# 查询数据表
# 查询一个表, 这样写就没错,指的是表空间TL下的TL_ATTACHMENT_ACCESS_V数据表
SELECT COUNT(*) FROM TL.TL_ATTACHMENT_ACCESS_V;
# 缺省表空间SYSTEM,指的是表空间SYSTEM下的TL_ATTACHMENT_ACCESS_V数据表
SELECT COUNT(*) FROM TL_ATTACHMENT_ACCESS_V;

6. Springboot开发

jdbc url连接格式(这种格式是最简单也是用得最多的)

jdbc:oracle:thin:@host:port:SID 
例如: jdbc:oracle:thin:@localhost:1521:orcl 

剩下可以去git看一下oracle的代码示例

你可能感兴趣的:(oracle,学习,数据库)