Oracle入门之对表内容的dml操作
oracle表的管理--添加数据
使用insert语句向表中插入数据
插入数据基本语法:
insert into table[(column [,column...])] values(value [,value...]);
insert into 表名[(列名 [,列名2...])] values(值 [,值2...]);
注意事项:
1、插入的数据应与字段的数据类型相同。
2、数据的大小应在列的规定范围内,例如:不能将一个长度为80的字符串加入到长度为40的列中。
3、在values中列出的数据位置必须与被加入的列的排列位置相对应。
4、字符和日期型数据应包含在单引号中。
5、插入空值,不指定或insert into table values(null);
6、给表的所有列添加数据时,可以不带列名直接添加values值。
oracle表的管理--修改数据
使用update语句修改表中数据。
Update语句基本语法:
update tablename set columnname=expr1 [,columnname2=expr2,...][where where_definition];
update 表名 set 列名=表达式 [,列名2=表达式2,...][where 条件];
注意事项:
1、update语法可以用新值更新原有表行中的各列;
2、set子句指示要修改哪些列和要给予哪些值;
3、where子句指定应更新哪些行。如没有where子句,则更新所有的行。(特别小心)
对students中的数据进行修改
将张三的性别改成女
SQL>update students set sex='女' where name='张三';
把张三的奖学金改为10
SQL>update students set fellowship=10 where name='张三';
把所有人的奖金都指高10%
SQL>update students set fellowship=fellowship*1.1;
向students添加数据
SQL>insert into students (id,name,sex,brithday,fellowship,resume) values(1,'张三','男','11
-11月-01',23.34,'hello');
SQL>insert into students values(2,'李四','男','11-11月-02',67.34,'hello2');
SQL>insert into students values(3,'王五','女','11-11月-03',671.34,'hello3');
插入部分字段与插入空值,语法是一样的。只是要注意,当字段设置可为空时,可以不用将字段列出。否则就需要将字段名和值添加进去。否则报错,具体参见上述插入数据6点注意事项。
insert into table[(column [,column...])] values(value [,value...]);
oracle表的管理--删除数据
基本语法:
delete from TABLENAME [where where_definition];
delete from 表名 [where 条件表达式];
注意事项:
1、如果不使用where子句,将删除表中所有的数据。(特别注意)
2、delete语句不能删除某一列的值(可使用update)。
3、使用delete语句仅删除记录,不删除表本身。如要删除表,使用drop table语句。
4、同insert和update一样,从一个表中删除记录将引起其它表的参照完整性问题,在修改数据库数据时,头脑中应始终不要忘记这个潜在的问题。
删除的几种方法比较:
delete from 表名;
删除所有记录,表结构还在,写日志,可以恢复的,速度慢
drop table 表名;
删除表的结构和数据
delete from student where xh='A001';
删除一条记录
truncate table 表名;
删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快。
设置保存点
savepoint 保存点名称;
回滚
rollback to 保存点名称;
特别注意:设置保存点及回滚操作是配合delete语句使用,用来找回使用delete删除的数据。而通过truncate删除的表数据是无法通过此方法找回的。
建议:
在使用delete删除表数据前使用savepoint设置保存点,防止数据误删除。
Oracle入门之对表内容的dml操作的更多相关文章
- 入门大数据---Hive常用DML操作
Hive 常用DML操作 一.加载文件数据到表 1.1 语法 LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename ...
- Oracle DBLINK 抽数以及DDL、DML操作
DB : 11.2.0.3.0 原库实例orcl:SQL> select instance_name from v$instance; INSTANCE_NAME--------------- ...
- oracle入门之对表数据查询(一)
此文中用到的表是Scott用户中自带的三张表: 基本select语句 基本语法: select [distinct] *|{columnl,column2,column3..} from table ...
- oracle入门之对表数据查询(三)
oracle表复杂查询--子查询 什么是子查询? 子查询是指嵌入在其它sql语句中的select语句,也叫嵌套查询. 单行子查询 单行子查询是指只返回一行数据的子查询语句. 请思考:如果显示与smit ...
- oracle入门之对表数据查询(二)
oracle表复杂查询 在实际应用中经常需要执行复杂的数据统计,经常需要显示多张表的数据,现在我们给大家介绍较为复杂的select语句 数据分组-max,min,avg,sum,count 如何显示所 ...
- Oracle——无法在查询中执行 DML 操作
今天在调用Oracle Function遇到一个异常
- salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)
salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesforce中的数据库使用的是Force.com 平台的数据库,数据表一行数据可以理解成一个sObject变量 ...
- 【转载】salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)
salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL) salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesfo ...
- Oracle 对表的基本CURD操作
Oracle对表的基本Curd操作: 样式表: 接下来对这张(表明:Stud)表进行Curd操作(请看面SQL代码) 增加新的字段列:alter table Stud add(heigh ...
随机推荐
- intelliJ idea常用快捷键 mac版
目录 coding project coding Command + P 显示方法参数信息 Command + N 自动生成getter.setter.hashCode.equals.toString ...
- JVM-GC学习
http://blog.csdn.net/column/details/14851.html 地址记录
- react项目中实现元素的拖动和缩放实例
在react项目中实现此功能可借助 react-rnd 库,文档地址:https://github.com/bokuweb/react-rnd#Screenshot .下面是实例运用: import ...
- ubuntu 创建文件夹和删除文件
创建 名为docker的文件夹 :mkdir docker 删除 名为docker的文件夹 : rm docker 创建名为docker-compose.yml的文件 : vi docker-comp ...
- vtime.hpp
//vov #ifndef VTIME_HPP #define VTIME_HPP #include <cstdio> #include <ctime> #include &l ...
- 使用pyinstaller打包多个py文件为一个EXE文件
1. 安装pyinstaller. pip install pyinstaller !!!!64位win7上打包后始终不能用,提示找不到ldap模块,换了32位win7就好了.!!!!(代码中涉及ld ...
- f-stack中ipc传递指针从应用中读取信息时挂掉
f-stack中ipc传递指针从应用中读取信息时挂掉 如:创建bridge0./ifconfig bridge0 create./ifconfig f-stack-0 down./ifconfig f ...
- Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值
“Uncaught RangeError: Maximum call stack size exceeded”.当运行js时出现这个报错,但你又查不到原因的时候,不要慌. 真相只有一个,那就是你的代码 ...
- mysql 联合表(federated)及视图
1)验证环境 源库:192.168.8.75 centos 7.5 mysql8.3 目标库:192.168.8.68 redhat 6.8 mysql5.7 2)登录源库并创建源表 $ mysql ...
- AES
ES算法之理论与编程结合篇 1 前言 AES是现在使用最多的对称密钥分组密码算法,在逆向的过程中经常碰到,这几天处于离职期,有点时间,于是乎想细细的来研究一下它的原理,也算是离职的一个纪念吧. 网上的 ...