SQL--DDL数据定义语言(Oracle)

2024-04-17 13:44

本文主要是介绍SQL--DDL数据定义语言(Oracle),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 数据定义语言
    • 创建表
    • 删除表
    • 清空表
    • 修改表
      • 修改表名,列名
      • 修改字段属性
      • 添加字段
      • 删除字段

数据定义语言

是针对数据库对象操作的语言
数据库对象:表,约束,视图,索引,序列…

CREATE     ---创建数据库对象
DROP       ---删除数据库对象
ALTER      ---修改数据库对象
TRUNCATE   ---清空  

以表来举例

创建表

CREATE TABLE  表名(列名1 字段属性,列名2 字段属性,列名3 字段属性.....)

表名和列名的命名规范:
1.必须以字母开头
2.不建议使用中文
3.除了_以外,不建议使用其他符号
4.长度不能超过30
5.同一个用户下,表名不能重复,同一张表下列名不能重复

CREATE TABLE Haha (Zno NUMBER(4),zname VARCHAR2(4000));
SELECT * FROM Haha;

在这里插入图片描述
DDL语言不需要commit提交的,执行成功即生效
快捷建表:

CREATE TABLE 表名 AS SQL语句 -----sql查询结果创建成表
CREATE TABLE hengh AS SELECT  emp.*,dname,loc FROM emp LEFT JOIN dept ON emp.deptno = dept.deptno;

在这里插入图片描述
表结构连同数据一起过来了。
如果不想要数据,可以在后面加一个永远不成立的条件,如:

CREATE TABLE hengheng AS SELECT  emp.*,dname,loc FROM emp LEFT JOIN dept ON emp.deptno = dept.deptno 
where 1=2;

在这里插入图片描述
练习:
快捷建表要求 该表有 姓名岗位薪资部门编号部门名称部门地址以及对应的部门平均工资

CREATE TABLE HEIHEI ASSELECT ENAME,JOB,A.DEPTNO,DNAME,(SELECT AVG(SAL) FROM EMP B WHERE B.DEPTNO = A.DEPTNO) AVGSALFROM EMP ALEFT JOIN DEPTON A.DEPTNO = DEPT.DEPTNO

删除表

DROP TABLES 表名

危险!因为是DDL语句,执行成功即生效,不要使用。

清空表

TRUNCATE TABLE 表名.

TRUNCATE 和DELETE 的区别
1.DELETE 属于dml语句,TRUNCATE 属于ddl语句
2.DELETE 会产生回滚日志,TRUNCATE 不会产生回滚日志,所以当你想要清空所有数据的时候,TRUNCATE 会效率高。
3.DELETE 可以删除部分数据,而TRUNCATE只能清空所有数据
4.DELETE 不释放空间,而TRUNCATE会释放空间

修改表

ALTER 修改数据库对象
以修改表举例

修改表名,列名

修改列名

ALTER TABLE 表名 RENAME COLUMN 旧列名 TO 新列名;

修改表名

ALTER TABLE 表名 RENAME TO 新表名;

注意:在工作中尽量少用,

修改字段属性

语法

ALTER TABLE 表名 MODIFY (列名 新字段属性,列名2,新字段属性);

1.修改属性大小 — 一般情况下是 往大改

ALTER TABLE heih MODIFY(ename varchar(30));

如果往小改,不能低于数据长度。改到比数据还小则会错误
2.修改属性

ALTER TABLE heih MODIFY(ename,number)

若修改属性,则该列必须为空。

添加字段

ALTER TABLE 表名 ADD(列名1 字段属性,列名2 字段属性......)

删除字段

ALTER TABLE DROP (列名1,列名2,列名3....) 

连同数据一起删掉。
但是不能删除全部列,至少保留一个字段

这篇关于SQL--DDL数据定义语言(Oracle)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/911955

相关文章

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

PLsql Oracle 下载安装图文过程详解

《PLsqlOracle下载安装图文过程详解》PL/SQLDeveloper是一款用于开发Oracle数据库的集成开发环境,可以通过官网下载安装配置,并通过配置tnsnames.ora文件及环境变... 目录一、PL/SQL Developer 简介二、PL/SQL Developer 安装及配置详解1.下

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySql死锁怎么排查的方法实现

《MySql死锁怎么排查的方法实现》本文主要介绍了MySql死锁怎么排查的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录前言一、死锁排查方法1. 查看死锁日志方法 1:启用死锁日志输出方法 2:检查 mysql 错误

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意