1. 建表与删表
Drop table tablename;
2. 修改表名
不能直接修改,但可以建立副表
Create table tableName as select * from tableName2
3. 加减字段
Alter table tableName add columnName datatype
Alter table tableName drop column columnName
4. 修改字段长度及类型
Alter table tableName modify columnName newdatatype
若修改长度,则长度不能小于现有数据长度
若修改类型,则字段必须为空,若有数据,则可新建字段,然后使用
使用 UPDATE 进行字段数据转换更新,以达到类型改变。
5. 加 NULL
Alter table tableName modify columnName datatype null/not null
6. 加 Primary key
Alter table tableName add primary key(id,pid…)
7. 删除 Primary key
Alter table tableName drop primary key
8. 当 A,B 结构一样时,复制数据如下
Insert into tableName select * from tableName2
9. 查询表中重复数据
Select count(*) col1,col2 from tableName group by col1,col2 having count(*)>1;
注: col1,col2 为主码,条件为 = 号,则查询出没有重复的数据
10. 删除表中重复数据
Create table tmp as (Select count(*) col1,col2 from tableName group by col1,col2 having count(*)>1);
Delete from tableName where col1,col2 in (select col1,col2 from tmp);
11. 删除表中重复数据,且保留表中最后一次录入的数据
Create table tmp as (Select min(rowed) id, col1,col2 from tableName group by col1,col2 having count(*)>1);
Delete from tableName a where a.rowid = (select b.id from tmp b where a.col1=b.col1 and a.col2=b.col2)
当 tmp 有大量数据时,应考虑使用 min(rowid) 或 max(rowed) ,多次执行删除 .
Oracle 中同时修改多个表,如在所有的表结构上添加 rkrq
1 select ‘alter table ‘||tname||’ add rkrq date null;’ from tab where tname like ‘D%’;
2 上面的 SQL 执行命令显示头标题,用 set head off 可以去掉头
3 spool c:\a.sql 表示输出上一条命令执行的缓存内容。
4 / 表示执行,或 r 表示执行上一次执行的 SQL , 并在第一行输出 SQL
5 spool off
6 @c:\a.sql 表示执行生成的 SQL
建立数据库链路
可以高效的传输数据,如果数据量大,可以按日期一段段的插入,
现在,在一个 ORACLE 中有一个表 A 有分区,要把这个分区去掉,将 A 中的数据转到另一个 ORACLE 中,且两表结构一样,则可以通过链路将数据直接插入
创建数据库链路步骤
1 在本地 oracle/product/10.20/db_1/network/admin 目录中,找到 tnsnames.ora 文件,并加入以下代码:
CYC=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST=10.84.29.103)(PORT=1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORA10G)
)
)
可以把 ora10g 的代码,即第一个别名的代码复制再修改
修改后直接保存,不用重启 ORACLE
2 在 SQLPLUS 中执行
Create database link linkName connect to 用户名 identified by 密码 using ‘ 别名 ’
或 Create public database link linkName connect to 用户名 identified by 密码 using ‘ 别名 ’
注意 : 创建视图需要权限, grant create view to mt;
连接数据库使用 conn xxx/xxx ,
存储过程调试权限 : GRANT debug any procedure , debug connect session TO jhcygck;
3 测试链路
Select * from daa01@linkName
注:当在一个窗口中创建了链路,则只能在此窗口中使用,若再开一个窗口则无效。
创建同义词 create or replace synonym DAA03 for DAA03@JHDZSDB;
Oracle 中复制表
Create table XX as select * from daa01@linkName
如果被复制表有分区,复制过来是没有分区的
Oracle 中查找相同记录
Select * from tableName where rowed in (select max(rowid) from tableName group by columnName having count(*) > 1)
以下语句查出所有重复且有多余的最后的记录数据
Select count(*),jh,cdsd from daa03 group by jh,cdsd having count(*) > 1;
以上语句查出有得复的数据,为 = 号则查出没有重复的数据
查看 ORACLE 中所有表和字段
Select table_name from user_table:// 当前用户的表
Select table_name from all_table;// 所有用户的表
Select table_name from dba_table:// 包括系统表
Select table_name from dba_table where owner=’ 用户名 ’
ORACLE 授权与取消授权
conn system/password@ORCL as sysdba;
授权
grant create session to tms;
回收授权
revoke create session from tms;
给用户授权DBA
grant dba to user;
改变用户默认role
alter user 用户 default role DBA;
分享到:
相关推荐
3. **记笔记**:整理学习内容,有助于巩固记忆。 4. **动手实践**:通过实验加深理解,如创建表、执行SQL语句等。 5. **持续思考**:对实验结果进行分析,深化理解。 6. **主动探索**:遇到问题,先自我尝试解决,...
本文将探讨Oracle的两大核心领域——开发与管理,并分享一些学习Oracle的实用技巧和心得。 首先,Oracle开发主要涉及编写存储过程、触发器以及使用Oracle Developer工具创建表单。作为一名Oracle开发者,你需要具备...
### Oracle入门心得精要 #### 一、定位与职业路径 Oracle作为一个强大的关系型数据库管理系统,其学习路径可大致分为两大方向:开发与管理。**开发**主要涉及编写存储过程、触发器等,以及利用Oracle的Developer...
ORACLE数据库空间整理心得 在本篇文章中,我们将探讨如何对ORACLE数据库进行空间整理,以解决数据库硬盘空间不足的问题。我们将从Shrink Undo表空间开始,介绍如何释放过度占用的空间,并解决UNDO表空间中的问题。 ...
### Oracle初学者入门心得知识点详解 #### 一、Oracle学习方向定位 Oracle作为一个庞大的数据库管理系统,为初学者提供了丰富的学习方向。根据个人兴趣与职业规划的不同,大致可以分为两大类:**开发**与**管理**...
### Oracle的初学者入门心得 #### 一、定位与职业方向 Oracle数据库作为一个庞大的系统,在初学者面前常常显得复杂而难以入手。为了更好地理解和掌握Oracle的相关技能,首先需要明确两个主要的方向:**开发**和**...
为了更好地理解和整理出其中的关键知识点,我们先对Oracle以及韩顺平老师进行简要介绍,然后重点阐述视频可能涵盖的核心内容。 ### Oracle简介 Oracle是一种广泛使用的、功能强大的关系型数据库管理系统(RDBMS)...
其内容覆盖面广泛,通过合理的分类和整理,方便了Oracle学习者查阅学习,虽有一些排版不妥之处,但对初学者来说仍具有一定的帮助。文档在排版上可能存在问题,因为很多内容是在后期添加的,作者计划在未来进行调整。...
这个"oracle精品实例,练习总结"的压缩包文件显然包含了nickcheng个人整理的一系列关于Oracle数据库的操作实例和学习心得,旨在帮助用户深入理解和应用Oracle技术。下面我们将深入探讨Oracle数据库的一些关键知识点。...
Oracle数据库命令个人总结是徐博文在2014年3月整理的关于Oracle数据库的命令和心得的总结。下面是从该总结中提取的重要知识点: 1. 查询数据库数据文件的基本字段信息:使用DESC DBA_DATA_FILES命令可以查询数据库...
- **SGA (System Global Area)**:所有Oracle进程共享的内存区域,包含数据缓冲区、重做日志缓冲区等关键数据。 - **PGA (Program Global Area)**:每个服务器进程或后台进程专用的内存区域,存储临时数据和控制...
数据处理是计算机数据管理的中心问题,包括数据采集、组织整理、控制编码和输入数据、存储、加工、计算、分类、检索、传输、输出等操作过程。 1.1.1 数据模型问题 实体、实体属性、实体集和实体型是数据库设计的...
这个笔记是学习oracle数据库过程中整理出来的,比较详细,适合于初学者。 │ oracle与tomcat端口冲突.txt │ Oracle学习笔记.pdf │ Oracle学习笔记.wps │ 安装Oracle后myEclipse不能正常使用.txt │ 手工配置...
3. Oracle优化数据库的心得:此篇心得分享了如何从不同方面优化Oracle数据库的性能,包括索引优化、SQL语句优化等。优化数据库可以显著提升系统性能,减少查询响应时间。 4. Oracle性能调优!:性能调优是数据库...
1. 计算机数据管理的发展:数据处理的一系列操作环节,包括数据采集、组织整理、控制编码和输入数据等。 2. 数据模型问题:实体、实体属性、实体集和实体型的概念等。 3. 数据库设计基础:包括数据库设计的基本概念...
- **前言**:这部分主要介绍了作者王重东的学习心得和笔记整理的过程。 #### 三、EBS 入门指南 - **入门一周之口水贴**:介绍EBS的基础概念、术语和常见操作流程。 - **入门二周之口水贴**:深入讲解如何使用EBS...