ORACLE常用命令 spool host 无 — 使用sqlplus连接数据库– 标准用法sqlplus username/password@hostname:port/SERVICENAME– 示例sqlplus payment/[email protected]/pay– hostname:port/SERVICENAME 可配置为别名到 tnsnames.ora 文件sqlplus payment
ORACLE常用命令
spool
host
<style> .CodeEntity .code_pieces ul.piece_anchor{width:25px;position:absolute;top:25px;left:-30px;z-index:1000;} .CodeEntity .code_pieces ul.piece_anchor li{width:25px;background: #efe;margin-bottom:2px;} .CodeEntity .code_pieces ul.piece_anchor li{border-left:3px #40AA63 solid;border-right:3px #efe solid;} .CodeEntity .code_pieces ul.piece_anchor li:hover{border-right:3px #40AA63 solid;border-left:3px #efe solid;} .CodeEntity .code_pieces ul.piece_anchor li a{color: #333;padding: 3px 10px;} .CodeEntity .code_pieces .jump_to_code{visibility:hidden;position:relative;} .CodeEntity .code_pieces .code_piece:hover .jump_to_code{visibility:visible;} .CodeEntity .code_pieces .code_piece:hover .jump_to_code a{text-decoration:none;} .CodeEntity .code_pieces h2 i{float:right;font-style:normal;font-weight:normal;} .CodeEntity .code_pieces h2 i a{font-size:9pt;background: #FFFFFF;color:#00A;padding: 2px 5px;text-decoration:none;} </style> <!—ecms -ecms
- –> <!—ecms -ecms
- $velocityCount
–> <!—ecms -ecms
–>
-- 使用sqlplus连接数据库-- 标准用法sqlplus username/password@hostname:port/SERVICENAME-- 示例sqlplus payment/[email protected]/pay-- hostname:port/SERVICENAME 可配置为别名到 tnsnames.ora 文件sqlplus payment/password@tnsname-- 先进入 sqlplus, 然后使用 conn 方法进行连接sqlplus /nologconn payment/[email protected]/pay-- copy 几条 -- 操作系统认证,不需要listener进程sqlplus / as sysdba-- 只能连接本机数据库,同样不需要listener进程sqlplus username/password-- 这种方式需要listener进程处于可用状态。最普遍的通过网络连接。sqlplus username/password@tnsname
-- 登录服务器, 切换至oracle用户su - oracle-- 进入文件<div style="color:transparent">本文来源gaodai.ma#com搞#代!码(网</div>夹,后续所有对文件的操作都是基于该目录cd /oracle/database/-- sqlplus 连接具体的数据库sqlplus payment/password-- 确定用户是否正确show user;-- 执行payment.sql-- 所有的内容输出至 payment.log,该文件位于 /oracle/database/ 目录spool payment.log@payment_indexs_execute.sqlspool off-- 使用host 命令可以转为 linux 命令执行host more payment.log-- 还可使用 conn 命令连接数据库conn payment/passwordshow user;
-- 查看数据库表的索引SELECT * FROM USER_INDEXS WHERE TABLE_NAME=’TableName’;-- 查看索引所建立的列信息SELECT * FROM USER_IND_COLUMNS WHERE INDEX_NAME=UPPER(‘IndexName’);-- 创建主键--1) 创建表的时候指定主键CREATE TABLE Persons(P_ID int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Address varchar(255),City varchar(255),CONSTRAINT PK_Persons PRIMARY KEY (P_ID,LastName))--2) ALTER Table 添加的两种方法ALTER TABLE TableName ADD PRIMARY KEY(Column1);-- 这种方式是否支持多列? 这种方式没有指定主键名称,主键默认名称是什么ALTER TABLE TableName ADD CONSTRAINT PK_TabeName PRIMARY KEY(Column1, Column2);-- 创建唯一性索引ALTER TABLE TableName ADD CONSTRAINT U_INDEX_NAME UNIQUE (Column1, Column2);CREATE UNIQUE INDEX U_INDEX_NAME ON TableName(Column1, Column2);-- 创建普通索引 是否有ALTER 方法创建?CREATE INDEX I_INDEX_NAME ON TableName (Column1, Column2);-- 当索引列存在重复时, 创建唯一性索引会报 “找到重复关键字"/*1. 将重复的记录进行修改2. 建立 enable novalidate 索引*/ALTER TABLE TableName ADD CONSTRAINT U_IDX_NAME ENABLE NOVALIDATE;-- 修改索引类型: ENABLE NOVLIDATE —> ENABLE VALIDATEALTER TABLE TableName ENABLE VALIDATE CONSTRAINT U_IDX_NAME;-- 删除索引ALTER TABLE TableName DROP CONSTRAINT U_IDX_NAME;-- 将表设置为只读表ALTER TABLE T READ ONLY;-- 取消只读(设置为读写)ALTER TABLE T READ WRITE;
-- 更新一个字段/*括号内的conditions 为 Table1和Table2的关联括号外的conditions 为 Table1更新的范围*/UPDAE Table1 SET Column1=(SELECT Column FROM Table2 WHERE Conditions) WHERE Conditions;-- 更新多个字段,多个字段之间使用逗号 , 分割UPDATE Table1 SET Column1, Column2=(SELECT Column1, Column2 FROM Table2 WHERE Conditions) WHERE Conditions;-- 将001和002机构的MCC,MCCDescription 两个字段 关联MCCDetail表 进行更新UPDATE Merchant t1 SET MCC,MCCDescription=(SELECT MCC,MCCDescription FROM MCCDetail t2WHERE T1.MCC=T2.MCC) WHERE T1.MerchantNo IN ('001', '002');