Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,由甲骨文公司开发。本文将对Oracle数据库的基础知识、创建权限、数据类型以及表的创建和约束进行深入的讲解。
一、Oracle数据库基本概念
1. Oracle驱动:在Oracle数据库中,ojdbc14.jar是Oracle JDBC驱动的一部分,用于Java应用程序连接Oracle数据库。
2. 数据:信息的基本单元,可以是数字、文字、图像等各种形式。
3. 数据处理:涉及数据的采集、存储、处理和传播,是信息系统的基石。
4. 数据管理:通过数据库管理系统(DBMS)对数据进行分类、组织、存储和维护。
5. 数据库:是一个存储和管理数据的仓库,通常包含一组有组织、相互关联的数据。
6. 数据库发展:经历了人工管理、文件管理和数据库系统三个阶段,Oracle属于数据库系统阶段。
7. 数据库管理软件:如SQL Server(微软,适用于中型项目)、Access(微软,适用于小型项目)、MySQL(开源,适用于多种规模项目)和Oracle(大型项目)。
8. 数据库连接:在命令行下,使用sqlplus工具,以sys用户身份登录,例如`sys/double@oracle as sysdba`。
二、创建权限与用户管理
1. 创建表空间:使用`CREATE TABLESPACE`语句定义表空间,并指定数据文件和大小,如`CREATE TABLESPACE MHDATAFILE 'd:\work01.dbf' SIZE 5M AUTOEXTEND ON;`
2. 创建用户:使用`CREATE USER`语句,指定用户名和密码,以及默认表空间,如`CREATE USER MH001 IDENTIFIED BY MH123456 DEFAULT TABLESPACE MH;`
3. 分配权限:使用`GRANT`语句给予用户连接、资源权限,以及对特定对象的操作权限。
4. 修改用户名密码:使用`ALTER USER`语句,如`ALTER USER MH001 IDENTIFIED BY MH12345;`
5. 删除用户:使用`DROP USER`语句,如`DROP USER MH001;`
6. 回收权限:使用`REVOKE`语句撤销用户的某些权限。
三、数据类型
1. 字符串数据类型:`CHAR`用于存储固定长度的字符串,效率较高;`VARCHAR2`用于存储可变长度的字符串,更节省空间。
2. 数字类型:`NUMBER(p,s)`,p为精度,s为小数位数,如`NUMBER(9)`用于整数,`NUMBER(10,2)`用于小数。
3. 日期类型:使用`DATE`,如`DATE '1980-05-06'`。
四、创建表与约束
1. 创建表:使用`CREATE TABLE`语句,如`CREATE TABLE stuinfo(sno NUMBER PRIMARY KEY, sname VARCHAR2(10) NOT NULL, ssex CHAR(2), sage NUMBER(3) NOT NULL, address VARCHAR(50));`
2. 主键约束:`PRIMARY KEY`确保每张表只有一个主键,且其值唯一,如`sno NUMBER PRIMARY KEY`。
3. 插入日期:使用`INSERT INTO`语句配合`TO_DATE`函数,如`INSERT INTO test VALUES (TO_DATE('2010-08-08 14:10:20', 'yyyy-MM-dd HH24:mi:ss'));`
4. 约束添加:`ALTER TABLE`语句可添加主键和外键约束,如`ALTER TABLE score ADD CONSTRAINT PK_sno_subject PRIMARY KEY (sno, subject);`和`ALTER TABLE score ADD CONSTRAINT FK_sno_stuinfo FOREIGN KEY (sno) REFERENCES stuinfo(sno);`
总结来说,Oracle数据库提供了丰富的数据类型和强大的权限管理功能,支持复杂的数据结构和约束,使得数据管理高效且安全。在实际应用中,理解并熟练掌握这些基础知识对于开发和管理Oracle数据库至关重要。