PL_SQL中的DDL与DML操作
发布时间: 2023-12-16 03:02:19 阅读量: 40 订阅数: 49 ![](https://csdnimg.cn/release/wenkucmsfe/public/img/col_vip.0fdee7e1.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/col_vip.0fdee7e1.png)
# 第一章:PL/SQL简介
## 1.1 PL/SQL概述
PL/SQL(Procedural Language/Structured Query Language)是用于Oracle数据库的过程化编程语言。它结合了SQL语句的强大查询能力和通用编程语言的灵活性,可以进行数据操作、逻辑处理和错误处理,是Oracle数据库开发的重要组成部分。
## 1.2 PL/SQL的特点和优势
- **过程化语言**: 支持过程化编程,能够实现复杂的业务逻辑。
- **SQL集成**: 可以无缝集成SQL语句,方便进行数据操作和查询。
- **错误处理**: 提供了丰富的异常处理机制,对数据操作和错误处理提供了良好支持。
- **性能优化**: 可以通过存储过程等机制提高数据库操作的性能。
- **安全性**: 通过存储过程和函数可以提高数据库的安全性。
## 1.3 PL/SQL与SQL的关系
PL/SQL是SQL语言的扩展,它允许开发人员编写程序代码来执行各种操作,包括数据查询、数据操纵和定义数据库对象。PL/SQL程序单元中可以包含SQL查询和DML(数据操纵语言)操作,可以通过存储过程、函数和触发器实现更复杂的业务逻辑。
## 第二章:DDL(数据定义语言)操作
### 2.1 DDL操作概述
在数据库中,DDL(Data Definition Language)被用于定义数据库对象,如表、视图、索引等。DDL操作用于创建、修改和删除这些数据库对象。
### 2.2 创建表(CREATE TABLE)
在PL/SQL中,可以使用DDL语句CREATE TABLE来创建表。下面是一个创建表的示例:
```python
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
department VARCHAR(50)
);
```
**场景:** 上述代码用于创建一个名为"employees"的表,该表包含id、name、age和department等列。
**注释:** 在CREATE TABLE语句中,可以定义表的列名、数据类型、约束等信息。
**代码总结:** CREATE TABLE语句用于创建表,通过指定表名和列的定义来创建表结构。
**结果说明:** 创建成功后,数据库中将出现一个名为"employees"的表。
### 2.3 修改表结构(ALTER TABLE)
在PL/SQL中,可以使用DDL语句ALTER TABLE来修改表结构。下面是一个修改表结构的示例:
```python
ALTER TABLE employees
ADD salary DECIMAL(10, 2),
MODIFY department VARCHAR(100);
```
**场景:** 上述代码用于向名为"employees"的表中添加一个名为"salary"的列,并修改"department"列的数据类型。
**注释:** 在ALTER TABLE语句中,可以使用ADD关键字添加新的列,使用MODIFY关键字修改现有列的定义。
**代码总结:** ALTER TABLE语句用于修改表结构,通过添加或修改列的定义来改变表的结构。
**结果说明:** 修改成功后,"employees"表将包含一个名为"salary"的列,并且"department"列的数据类型将变更为VARCHAR(100)。
### 2.4 删除表(DROP TABLE)
在PL/SQL中,可以使用DDL语句DROP TABLE来删除表。下面是一个删除表的示例:
```python
DROP TABLE employees;
```
**场景:** 上述代码用于删除名为"employees"的表。
**注释:** DROP TABLE语句会完全删除指定的表,包括表的结构和数据。
**代码总结:** DROP TABLE语句用于删除表,通过指定表名来删除指定的表。
**结果说明:** 删除成功后,名为"employees"的表将不存在于数据库中。
### 第三章:DML(数据操作语言)操作
#### 3.1 DML操作概述
数据操作语言(Data Manipulation Language,简称DML)是用来操作数据库中存储的数据的语言,主要包括插入数据、更新数据和删除数据三个操作。
#### 3.2 插入数据(INSERT)
插入数据是指向数据库表中添加新的行。例如,向名为"employees"的表中插入一条新员工记录:
```sql
INSERT INTO employees (id, name, age, department)
VALUES (1, 'John Smith', 30, 'IT');
```
**代码解释:**
- 使用INSERT INTO语句将数据插入表"employees"中。
- 指定要插入的列(id, name, age, department)和相应的值。
- 插入一条id为1,姓名为"John Smith",年龄为30,部门为"IT"的新员工记录。
**结果说明:**
成功执行该语句后,数据库表"employees"中会新增一条员工记录。
#### 3.3 更新数据(UPDATE)
更新数据是指修改数据库表中现有行的数据。例如,将员工"John Smith"的年龄更新为31岁:
```sql
UPDATE employees
SET age = 31
WHERE name = 'John Smith';
```
**代码解释:**
- 使用UPDATE语句更新表"employees"中的数据。
- 使用SET关键字设置要更新的列(age),以及它们的新值(31)。
- 使用WHERE子句指定要更新的行(name为'John Smith')。
**结果说明:**
执行该语句后,数据库表"employees"中名为"John Smith"的员工年龄将被更新为31岁。
#### 3.4 删除数据(DELETE)
删除数据是指从数据库表中删除行。例如,删除名为"John Smith"的员工记录:
```sql
DELETE FROM employees
WHERE name = 'J
```
0
0
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![ppt](https://img-home.csdnimg.cn/images/20241231044937.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)