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 要删除的字段名称;
相关推荐
weisian15117 分钟前
Redis篇--常见问题篇6--缓存一致性1(Mysql和Redis缓存一致,更新数据库删除缓存策略)
数据库·redis·缓存
中草药z1 小时前
【Spring】深入解析 Spring 原理:Bean 的多方面剖析(源码阅读)
java·数据库·spring boot·spring·bean·源码阅读
地球资源数据云1 小时前
全国30米分辨率逐年植被覆盖度(FVC)数据集
大数据·运维·服务器·数据库·均值算法
Ahern_2 小时前
Oracle 普通表至分区表的分区交换
大数据·数据库·sql·oracle
夜半被帅醒2 小时前
MySQL 数据库优化详解【Java数据库调优】
java·数据库·mysql
不爱学习的啊Biao2 小时前
【13】MySQL如何选择合适的索引?
android·数据库·mysql
破 风3 小时前
SpringBoot 集成 MongoDB
数据库·mongodb
Rverdoser3 小时前
MySQL-MVCC(多版本并发控制)
数据库·mysql
m0_748233643 小时前
SQL数组常用函数记录(Map篇)
java·数据库·sql
dowhileprogramming3 小时前
Python 中的迭代器
linux·数据库·python