ORACLE 知识整理

目录

  • [一. 插入指定数量的数据](#一. 插入指定数量的数据)
  • [二. 索引](#二. 索引)
    • [2.1 创建索引](#2.1 创建索引)
    • [2.2 删除索引](#2.2 删除索引)
  • [三. 查询计划](#三. 查询计划)
  • [四. Oracle SQLPlus常用设置](#四. Oracle SQLPlus常用设置)
  • [五. 增加删除字段](#五. 增加删除字段)

一. 插入指定数量的数据

⏹当需要向表中插入若干测试数据的时候,可通过下面这种方式造数据

  • 先从DUAL虚拟表中检索后造出10000条数据后,再插入到指定的表中
  • 除了主键之类的关键字段之外,其余字段写固定值即可
sql 复制代码
INSERT INTO 表名
	SELECT
		-- 因为该字段为字符串形式,所以使用TO_CHAR转换
		TO_CHAR(100000000 + LEVEL) || 'TEST_CONTENT'
		-- 固定字段值1
		,'6599'
		-- 固定字段值2
		, '20240323'
		-- 固定字段值3
		, '121212' 
	FROM
		DUAL CONNECT BY LEVEL <= 10000;

二. 索引

2.1 创建索引

  • 索引可以由一个字段构成,也可以由多个字段联合构成一个索引

⏹创建global全局索引

sql 复制代码
CREATE INDEX 索引名 ON 表名(字段名1,字段名2,...) GLOBAL PARTITION BY 
HASH(字段名1,字段名2,...) PARTITIONS 256;

⏹创建local局部索引

sql 复制代码
CREATE INDEX 索引名 ON 表名(字段名) LOCAL ONLINE;

2.2 删除索引

sql 复制代码
DROP INDEX 索引名 ONLINE;

三. 查询计划

sql 复制代码
EXPLAN PLAN FOR SQL语句;
SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY());

四. Oracle SQLPlus常用设置

  • SET LINESIZE用于设置输出行的最大长度。
  • 如果不设置或者设置的值过小,在命令行窗口进行查询的时候可能导致一行内容被截断,无法更好的在页面上显示。
sql 复制代码
SET PAGESIZE 0;
SET LINESIZE 1000;
  • 用于关闭替代变量的替换功能
  • 在 SQLPlus 中,默认情况下,替代变量以 & 开头,并且在执行命令时会被替换为用户输入的值。
  • 执行 SET DEFINE OFF;后,SQL*Plus 将不再替换以 & 开头的内容,而会将&视为普通的文本。
  • 当你需要输入包含 & 字符的文本而不想让 SQL*Plus 将其作为替代变量处理时常用。例如插入的数据为aaa&bbb
sql 复制代码
SET DEFINE OFF;
  • Oracle 数据库中启用 SQL 语句执行时间统计的命令。
  • 当运行这个命令后,在执行 SQL 语句时会显示出执行时间,可以帮助你评估查询的效率和性能。这对于优化和调试复杂的查询非常有用。
sql 复制代码
SET TIMING ON;

五. 增加删除字段

  • 向表中增加指定的字段并指定数据类型
sql 复制代码
-- ALTER TABLE 表名 ADD 字段名 字段的类型名称(长度)
ALTER TABLE TM_社員 ADD 表示順 smallint(8);
  • 删除表中既存的某个字段
sql 复制代码
-- ALTER TABLE 表名 DROP COLUMN 想要删除的字段名
ALTER TABLE TM_社員 DROP COLUMN 要删除的字段名称;
相关推荐
敲代码的嘎仔15 小时前
自己设计了一个兑换码算法:自增ID + Base32转码 + 按位加权签名 + 异或混淆,面试被追问细节时终于不用慌了
java·数据库·mysql·算法·微服务·面试·职场和发展
shirsl16 小时前
数据开发实时项目问题整理
数据库·sql·big data
bbq粉刷匠16 小时前
数据库设计实践
数据库
java_logo16 小时前
Docker 部署 ClickHouse Server:轻松搭建列式 OLAP 分析数据库平台
数据库·clickhouse·docker·私有化部署·olap·列式数据库·轩辕镜像
盛世宏博智慧档案16 小时前
高速 ETC 门架外场机房温湿度远程监测解决方案
服务器·数据库·php·高度·高速·温湿度
—Miss. Z—16 小时前
计算机三级数据库技术—应用题2️⃣
数据库·mysql
PrudentWoo17 小时前
PostgreSQL 12 登录失败:role “postgres“ is not permitted to log in 的排查与修复
数据库·postgresql
这个DBA有点耶17 小时前
临时表从4.7秒到0.12秒:不是所有Using temporary都需要优化
数据库·mysql·代码规范
天衍四九-17 小时前
排查慢SQL用explain分析执行计划,主要关注哪些字段?
数据库·sql
Meta3917 小时前
PostgreSQL报SELECT rule‘s target entry X has different type from column “XXX“
数据库·postgresql·dubbo