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 要删除的字段名称;
相关推荐
每天敲200行代码2 小时前
MySQL 事务管理
数据库·mysql·事务
巴里巴气2 小时前
MongoDB索引及其原理
数据库·mongodb
程序员勋勋12 小时前
Redis的String数据类型底层实现
数据库·redis·缓存
不修×蝙蝠3 小时前
MySQL 全详解:从入门到精通的实战指南
数据库·mysql·索引·最左前缀
我的ID配享太庙呀4 小时前
Django 科普介绍:从入门到了解其核心魅力
数据库·后端·python·mysql·django·sqlite
不辉放弃5 小时前
kafka的消费者负载均衡机制
数据库·分布式·kafka·负载均衡
拉姆哥的小屋5 小时前
用 Flask 打造宠物店线上平台:从 0 到 1 的全栈开发实践
数据库·oracle·flask
liliangcsdn6 小时前
mac neo4j install & verifcation
数据库·neo4j
Cyanto6 小时前
MyBatis-Plus高效开发实战
java·开发语言·数据库
-XWB-7 小时前
【Oracle】套接字异常(SocketException)背后隐藏的Oracle问题:ORA-03137深度排查与解决之道
数据库·oracle