`

Oracle数据整理心得

阅读更多

 

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;

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Oracle 的入门心得

    3. **记笔记**:整理学习内容,有助于巩固记忆。 4. **动手实践**:通过实验加深理解,如创建表、执行SQL语句等。 5. **持续思考**:对实验结果进行分析,深化理解。 6. **主动探索**:遇到问题,先自我尝试解决,...

    oracle技巧心得.doc

    本文将探讨Oracle的两大核心领域——开发与管理,并分享一些学习Oracle的实用技巧和心得。 首先,Oracle开发主要涉及编写存储过程、触发器以及使用Oracle Developer工具创建表单。作为一名Oracle开发者,你需要具备...

    oracle入门心得.pdf

    ### Oracle入门心得精要 #### 一、定位与职业路径 Oracle作为一个强大的关系型数据库管理系统,其学习路径可大致分为两大方向:开发与管理。**开发**主要涉及编写存储过程、触发器等,以及利用Oracle的Developer...

    ORACLE数据库空间整理心得

    ORACLE数据库空间整理心得 在本篇文章中,我们将探讨如何对ORACLE数据库进行空间整理,以解决数据库硬盘空间不足的问题。我们将从Shrink Undo表空间开始,介绍如何释放过度占用的空间,并解决UNDO表空间中的问题。 ...

    ORACLE初学者入门心得(经典版)

    ### Oracle初学者入门心得知识点详解 #### 一、Oracle学习方向定位 Oracle作为一个庞大的数据库管理系统,为初学者提供了丰富的学习方向。根据个人兴趣与职业规划的不同,大致可以分为两大类:**开发**与**管理**...

    Oracle的初学者入门心得

    ### Oracle的初学者入门心得 #### 一、定位与职业方向 Oracle数据库作为一个庞大的系统,在初学者面前常常显得复杂而难以入手。为了更好地理解和掌握Oracle的相关技能,首先需要明确两个主要的方向:**开发**和**...

    Oracle视频

    为了更好地理解和整理出其中的关键知识点,我们先对Oracle以及韩顺平老师进行简要介绍,然后重点阐述视频可能涵盖的核心内容。 ### Oracle简介 Oracle是一种广泛使用的、功能强大的关系型数据库管理系统(RDBMS)...

    Oracle很详细的讲解

    其内容覆盖面广泛,通过合理的分类和整理,方便了Oracle学习者查阅学习,虽有一些排版不妥之处,但对初学者来说仍具有一定的帮助。文档在排版上可能存在问题,因为很多内容是在后期添加的,作者计划在未来进行调整。...

    oracle精品实例,练习总结

    这个"oracle精品实例,练习总结"的压缩包文件显然包含了nickcheng个人整理的一系列关于Oracle数据库的操作实例和学习心得,旨在帮助用户深入理解和应用Oracle技术。下面我们将深入探讨Oracle数据库的一些关键知识点。...

    Oracle数据库命令 个人总结

    Oracle数据库命令个人总结是徐博文在2014年3月整理的关于Oracle数据库的命令和心得的总结。下面是从该总结中提取的重要知识点: 1. 查询数据库数据文件的基本字段信息:使用DESC DBA_DATA_FILES命令可以查询数据库...

    oracle的入门集锦大全宝典电子书

    - **SGA (System Global Area)**:所有Oracle进程共享的内存区域,包含数据缓冲区、重做日志缓冲区等关键数据。 - **PGA (Program Global Area)**:每个服务器进程或后台进程专用的内存区域,存储临时数据和控制...

    oracle数据库基础知识.ppt

    数据处理是计算机数据管理的中心问题,包括数据采集、组织整理、控制编码和输入数据、存储、加工、计算、分类、检索、传输、输出等操作过程。 1.1.1 数据模型问题 实体、实体属性、实体集和实体型是数据库设计的...

    Oracle 10g 学习笔记

    这个笔记是学习oracle数据库过程中整理出来的,比较详细,适合于初学者。 │ oracle与tomcat端口冲突.txt │ Oracle学习笔记.pdf │ Oracle学习笔记.wps │ 安装Oracle后myEclipse不能正常使用.txt │ 手工配置...

    Oracle经典常用技巧荟萃

    3. Oracle优化数据库的心得:此篇心得分享了如何从不同方面优化Oracle数据库的性能,包括索引优化、SQL语句优化等。优化数据库可以显著提升系统性能,减少查询响应时间。 4. Oracle性能调优!:性能调优是数据库...

    oracle数据库基础知识.pptx

    1. 计算机数据管理的发展:数据处理的一系列操作环节,包括数据采集、组织整理、控制编码和输入数据等。 2. 数据模型问题:实体、实体属性、实体集和实体型的概念等。 3. 数据库设计基础:包括数据库设计的基本概念...

    Oracle EBS 开发笔记

    - **前言**:这部分主要介绍了作者王重东的学习心得和笔记整理的过程。 #### 三、EBS 入门指南 - **入门一周之口水贴**:介绍EBS的基础概念、术语和常见操作流程。 - **入门二周之口水贴**:深入讲解如何使用EBS...

Global site tag (gtag.js) - Google Analytics