`
234390216
  • 浏览: 10237905 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A5ee55b9-a463-3d09-9c78-0c0cf33198cd
Oracle基础
浏览量:462838
Ad26f909-6440-35a9-b4e9-9aea825bd38e
springMVC介绍
浏览量:1775912
Ce363057-ae4d-3ee1-bb46-e7b51a722a4b
Mybatis简介
浏览量:1398690
Bdeb91ad-cf8a-3fe9-942a-3710073b4000
Spring整合JMS
浏览量:395130
5cbbde67-7cd5-313c-95c2-4185389601e7
Ehcache简介
浏览量:680150
Cc1c0708-ccc2-3d20-ba47-d40e04440682
Cas简介
浏览量:531108
51592fc3-854c-34f4-9eff-cb82d993ab3a
Spring Securi...
浏览量:1184883
23e1c30e-ef8c-3702-aa3c-e83277ffca91
Spring基础知识
浏览量:468680
4af1c81c-eb9d-365f-b759-07685a32156e
Spring Aop介绍
浏览量:151478
2f926891-9e7a-3ce2-a074-3acb2aaf2584
JAXB简介
浏览量:68321
社区版块
存档分类
最新评论

Oracle——02表的基本操作+merge+truncate

阅读更多

 

 

(1)创建表的基本语法如下:

 

	create table tableName(columnName dataType [default expression][column columnStraint],...n) [tablespace tableSpaceName]
 

(2)修改表的基本语法如下:

 

	alter table tableName
	[add(columnName dataType [default expression][column columnStraint],...n)] --添加列
	[modify(columnName [dataType][default expression][columnStraint],...n)] --修改列
	[drop drop_clause] --删除列或约束条件 drop column columnName
 

(3)删除表的语法:drop table tableName.

 

(4)在往表中插入记录时,如果需要插入某列的值为空,则值必须置为null,如果列值指定为该列的默认值,则用default。

 

(5)merge语句,使用该语句可以实现对表的更新或插入。语法格式如下:

 

	merge into tableName using tableName on(join_condition) when matched then update set...
		when not matched then insert(...) values(...)
 

这个语句的意思是把using表合并到into表,合并条件是on(condition),当条件满足时只能是更新into表中的对应的记录,当条件不满足时,则也只能是往into表里面添加对应的数据,而该数据中也只能使用using表中当前记录对应的数据。

示例如下:

假设有一个student表,那么以下语句就可以实现当a的id大于b的id的时候把所有student的年龄加2,否则就新增一条记录。

 

		merge into student a using student b on(a.id>b.id) when matched then update set age=age+2 when not matched then insert(id,name,age,sex,no) 
		values(b.id+100,b.name,b.age,b.sex,b.no);
 

(6)删除表记录之delete和truncate。

delete的语法格式如下:

delete from tableName [where condition] 

该语句的意思是删除tableName表中满足condition条件的记录,当condition省略时则删除表中所有记录。

truncate的语法格式如下:

truncate table tableName

该语句的意思是删除tableName表中的所有记录,使用truncate可以释放占用的数据块表空间。truncate删除是不能回滚的,而delete删除是可以回滚的。正因为如此使用truncate删除所有记录的速度比用delete删除所有记录的速度快。

2
0
分享到:
评论

相关推荐

    oracle同一个表中使用merge.txt

    oracle同一个表中使用merge

    文件差异比较工具Araxis+Merge+2001+Professional+Evaluation

    Araxis Merge 2001 Professional Evaluation是一款强大的文件差异比较工具,主要用于帮助用户在不同版本的文本文件之间进行差异分析和合并操作。在IT行业中,这样的工具是开发人员、版本控制管理员以及任何需要对比...

    Oracle merge into用法

    在Oracle数据库中,`MERGE INTO`语句是一种非常强大的工具,它允许用户根据源表中的数据更新目标表,同时也可以插入新记录。这一特性在处理大量数据时尤其有用,因为它能够在一个步骤中完成更新和插入操作,从而提高...

    POJ2513-Colored Sticks【TrieTree+MergeSet+EulerPath】

    【标题】"POJ2513-Colored Sticks【TrieTree+MergeSet+EulerPath】"涉及的是一道编程竞赛题目,主要考察参赛者的数据结构与算法应用能力,特别是Trie树(字典树)、并查集(MergeSet)以及欧拉路径(Euler Path)这...

    oracle数据库之间同步数据 dbLink +job方式

    Oracle提供了一种强大的数据同步工具——`MERGE`语句,它可以有效地处理这种同步任务。 下面是一个简单的示例,展示了如何使用`MERGE`语句来同步两个数据库中的数据: ```sql MERGE INTO products p USING new_...

    oracle merge 用法详解

    自Oracle 9i版本开始,Oracle数据库引入了一个非常强大的SQL语句——`MERGE`命令。通过这个命令,用户可以在一个单一的SQL语句中完成对表的插入(`INSERT`)和更新(`UPDATE`)操作,极大地简化了数据处理流程并提高了...

    数据结构C++ 线性表——顺序表和单链表基本操作(含代码和注释).docx

    ### 数据结构C++ 线性表——顺序表和单链表基本操作 #### 一、概述 在《数据结构C++ 线性表——顺序表和单链表基本操作(含代码和注释).docx》文档中,作者详细介绍了如何在C++中实现顺序表和单链表的基本操作,并...

    Araxis+Merge 比较工具

    比较好用的比较工具,可以比较目录或单个文件

    Oracle_merge

    Oracle 9i R2 版本引入了一种名为 `MERGE` 的新功能,这一功能在业界被称为“更新插入”(upsert),即在一个步骤内同时实现数据更新与插入操作。通过这种方式,不仅能够极大地提高数据处理效率,还能简化复杂的业务...

    浅谈Oracle数据库中Merge Into的用法.pdf

    Merge Into 语句的语法和基本操作如下: Merge Into [目标表名] Using ([查询语句]) On ([条件表达式]) When Matched Then [update 语句] When Not Matched Then [insert 语句] 其中,Into 子句指定所要修改或者...

    oracle Merge 函数.doc

    Oracle Merge 函数是一种强大的数据操作语句,用于从一个表中选择一些数据更新或者插入到另一个表中。Merge 函数的使用方式有三种:只更新不插入、只插入不更新和既插入也更新。 Merge 函数的基本用法 Merge ...

    oracle merge into的使用

    在Oracle 9i版本中,Merge Into 的引入使得开发者能够同时执行更新(UPDATE)和插入(INSERT)操作,而到了Oracle 10g及后续版本,这一功能得到了进一步增强,提供了更丰富的条件选择和操作选项。 ### 知识点详述:...

    Oracle中merge into的使用

    在Oracle数据库中,`MERGE INTO`语句是一种强大的数据操作工具,它允许你在一个步骤中执行更新(UPDATE)和插入(INSERT)操作,从而提高了数据处理的效率和灵活性。这个命令尤其适用于需要同步两个表的数据时,比如...

    Oracle数据库应用开发——数据操作与PLSQL程序设计实验报告.docx

    【Oracle数据库应用开发——数据操作与PLSQL程序设计实验报告】 在Oracle数据库应用开发中,数据操作和PL/SQL程序设计是核心技能之一。实验主要涵盖了四大方面:数据的增删改查操作、简单的和高级的查询操作、存储...

    SQL优化过程中常见Oracle中"HINT"的30个用法

    以上列出了30个常见的Oracle`HINT`及其基本用法。在实际应用中,可以根据具体的查询需求和性能目标灵活运用这些`HINT`来优化SQL查询,从而显著提高系统的响应速度和整体性能。需要注意的是,在使用`HINT`时应谨慎...

    TortoiseSVN+Merge_v1.12.2 2019中文官方文档

    甚至审查和采用这些标准差异文件——通常称之为 补丁 。 官方安装包地址: https://osdn.net/frs/redir.php?m=iij&f=/storage/g/t/to/tortoisesvn/1.12.2/Application/TortoiseSVN-1.12.2.28653-x64-svn-1.12.2.msi

    用SVN实现并行开发——分支合并基本操作

    通过在SVN中导入这些目录结构,可以构建出一个基本的版本库布局。 ### 增加主干文件 在本地工作目录中,创建一个新的工作空间,例如命名为WorkDir01。然后,从SVN仓库中导出trunk目录结构到该工作空间。接下来,...

    Oracle 大数据量操作性能优化

    在操作分区表时,需要注意添加、删除、Truncate 和合并分区等操作。例如,添加分区可以使用 alter table add partition 语句,删除分区可以使用 alter table drop partition 语句,Truncate 分区可以使用 alter ...

    数据结构实验——链表

    通过这个实验,你可以熟练掌握链表的基本操作,这对于理解和解决更复杂的数据结构问题至关重要。链表的动态特性使其在处理不定数量的数据时非常有用,同时,链表的插入、删除操作通常比数组更加高效。此外,了解如何...

Global site tag (gtag.js) - Google Analytics