三大类sql语句——该记录是本人以前微博上的文章
一、DML语句
二、DDL语句
三、事务控制语句
一、DML语句-Data Mulipulation Language
DML语句数据操作野菊执行后会生成一个事务,事务需要提交才能够永久生效,在commit前是可以进行回滚撤销操作的!
1、insert into 插入语句
(1)、插入日期
insert into emp values('tengjiang',to_date('1990-7-19','yyyy-mm-dd'));
插入日期型数据的时候必须要使用to_date语句,这样可将字符转换为日期格式;
(2)、插入有三种种格式
a、insert into emp(values1,values2,values3);
b、insert into emp(empno,ename,job) values(values1,values2,values3);
c、insert into bonus select(); 将查询结果放入另外一张表中,相当于复制数据;
insert into bonus select ename,job,comm from emp;将emp表中的ename,job,comm三个字段的放入bonus表中;
2、update修改update emp set修改内容
update bonus set(sal,comm)=(select sal,comm form bonus where ename='TENGJIANG')
where ename='ZHANGSAN';
3、delete 删除
(1)、delete from bonus where ename='TENGJIANG';将姓名为滕江的这条数据删除;
(2)、delete bonus;直接删除所有数据,保留表结构;
DML语句在进行操作时,需要commit才能生效,如不commit,下次重新连接数据库时数据又会恢复成原来状态;
二、DDL语句数据定义语句,操作表结构的,无需提交即可生效;
1、truncate 删除语句,快速删除表内容,名义上属于DML语句,实际上属于DDL语句,直接生效不需要手动提交,不能进行回滚;
truncate table bonus;
2、create table test(字段 数据类型,字段2 数据类型)
(1)、create table test (name varchar(20),nianling number(3),sal number(10));
创建test表格包含三个字段
insert into test values('tengjiang',20,3000);
number(m,n):定义最大位数是m,精确到小数点后n位的数字类型,m最大位数不能超过38位
char(n):定义长度为n的固定长度的字符类型,这个n的最大值是2000个字节
----如果存储的字符长度不到n,会使用空格补齐到n个字节进行存储
varchar2(n):定义最大长度为n的可变长度的字符类型,n的最大值是4000个字符
----按照实际输入的字符长度进行存储
char():浪费空间,查询效率较高
varchar2():节省空间,查询效率较低
date:日期类型,公元前4712年1月1日到公元后4712年12月31日
number(m,n):定义最大位数是m,精确到小数点后n位的数字类型,m最大位数不能超过38位
char(n):定义长度为n的固定长度的字符类型,这个n的最大值是2000个字节
----如果存储的字符长度不到n,会使用空格补齐到n个字节进行存储
varchar2(n):定义最大长度为n的可变长度的字符类型,n的最大值是4000个字符
----按照实际输入的字符长度进行存储
char():浪费空间,查询效率较高
varchar2():节省空间,查询效率较低
date:日期类型,公元前4712年1月1日到公元后4712年12月31日
create table test3
(
testid number(4),
testname varchar2(20),
testgender char(1) default 'M',
testage number(3) default 18,
testcore number(4,1),
testdate date
);
(2)、create tabel 表名as select将查询的结果建立成一张新表
create table test2 sa select * from test;
3、alert 修改表结构
(1)、alter table 表名 add 列名 数据类型 添加一列
alter table test2 add testid number(4);
(2)、alter table 表名drop colume 列名; 删除一列
alter table test2 drop column testid;
(3)、alter table 表名 rename column 原列名 to 新列名;
alter table test2 rename column nianling to age; 修改字段名称
(4)、alter table 表名 modify 列名 数据类型;
alter table test2 modify age number(4);
(5)、添加、修改、删除默认值
alter table 表名 modify 列名 default 默认值;
alter table 表名 modify 列名 default null;
4、drop 删除表
drop table 表名;
drop table test;
-----delete:属于dml语句,需要提交才能生效,可以回滚撤销操作,可以删除表中所有数据
-----也可以只删除条件范围内的数据,保留表结构
-----truncate:属于ddl语句,直接生效不需要提交,也不能回滚。快速删除表中的所有数据
----不能指定范围删除,保留表结构
-----drop:属于ddl语句,直接生效不需要提交,也不能会馆。删除数据和表的结构
5、rename 重新命名表
rename 原表名 to 新表名
三大类sql语句——该记录是本人以前微博上的文章的更多相关文章
- Mysql中 查询慢的 Sql语句的记录查找
Mysql中 查询慢的 Sql语句的记录查找 慢查询日志 slow_query_log,是用来记录查询比较慢的sql语句,通过查询日志来查找哪条sql语句比较慢,这样可以对比较慢的sql可以进行优化. ...
- 监控SQL:执行表中所有sql语句、记录每个语句运行时间(3)
原文:监控SQL:执行表中所有sql语句.记录每个语句运行时间(3) 通过执行一个 带参数的存储过程 exec OpreateTB('OpreateUser','IsRun') 更新表的数据 表 ...
- SqlServer数据库表生成C# Model实体类SQL语句——补充
在sql语句最前边加上 use[数据库名] 原链接:https://www.cnblogs.com/jhli/p/11552105.html --[SQL骚操作]SqlServer数据库表生成C ...
- sql语句操作记录
发觉一些sql语句写出来的时候不停忘记,做一个记录. mySQL .查看表的创建过程sql语句和注释,注释是在创建表的过程中增加comment,后面跟随注释的内容 SHOW CRATE TABLE T ...
- SQL 语句判断记录是否存在(最简洁简单性能最优)
今天查了下,发现网上的没有一个sql语句写的好的. 判断记录是否存在,要不是语句不够简洁,要不就是性能有很大问题. 我进行了优化后,最简洁简单性能最优的的sql语句,用来判断表中的记录是否存在: se ...
- 数据库优化之SQL语句优化-记录
1. 操作符优化 (a) IN 操作符 从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查 ...
- sql语句小记录
测试过程中,需要去数据库中查询一些结果,比如验证码 常用的是查询 更新比较少用 删除一般不用 sql查询语句的嵌套用法,比较实用 比如in的用法:第一种:查询多个值时 SELECT "栏位名 ...
- SQL语句——重复记录
1.查找重复记录: (按id查找) select * from user_info where id in ( select id from user_info group by id ) 即:sel ...
- oracle数据库安装过程中的疑惑—该记录是本人以前写在微博上的文章
转行IT初学者关于oracle数据库整理第一次安装数据库的时候都是按照操作步骤一步一步进行安装,并没有对操作步骤产生过怀疑或者为什么要这么进行操作?2017年12月8日再次阅读安装操作说明书的时候有了 ...
随机推荐
- OfType<string>()
object[] vals = { 1, "Hello", true, "World", 9.1 }; IEnumerable<double> ju ...
- wpf 窗体添加背景图片
方法一:xaml中:<控件> <控件.Background><ImageBrush ImageSource="/WpfApplication1;compon ...
- OPC 集成的五大要素,你都掌握了吗?
相信在处理工业项目集成问题的时候,自动化集成供应商真正需要的不是那些华丽的宣传语,而是提供真正的通信数据集成实力. 任何自动化集成的供应商都希望能够消除中间的层层障碍,从而实现真正的信息集成互通.那么 ...
- 章节十五、2-PageObjectModel
一.在实现自动化过程中,会有很多重复的代码,我们在维护代码时会很困难,如果想解决这个问题,我们就需要使用PageObjectModel(页面对象模型)的方式来进行自动化代码的书写. 二.案例演示 以该 ...
- Mac下多版本pip共存
Mac下多版本pip共存 来自于官方的解释, pip是python包管理工具, 该工具提供了对python包的查找, 下载, 安装, 卸载等功能python第三方工具包多数依赖于pip进行安装, 如 ...
- Fundebug:JavaScript插件支持错误采样
Fundebug的付费套餐主要是根据错误事件数制定的,这是因为每一个发送到我们服务器的事件,都会消耗一定的CPU.内存.磁盘以及带宽资源,尤其当错误事件数非常大时,会对我们的计算资源造成很大压力. 如 ...
- 3.UML中的类图及类图之间的关系
统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...
- 04发送请求,将值赋给data--动态传递参数
03==>发送青丘,将值赋给data. 注意:赋值使用的是 _this.setData({ }) 是以冒号的形式赋值, 提前保存好this data: { arrlistdata:[], }, ...
- xSS-Reflected
反射性(非持久性XSS),藏在URL中 一般用户访问恶意链接执行 Low <?php header ("X-XSS-Protection: 0"); // Is there ...
- Linux下JDK中文字体乱码
java生成图片的时候用到字体,但是liunx系统没有这些字体需要把C:\Windows\Fonts 上传到/usr/local/jdk1.8.0_171/jre/lib/fonts 重启tomcat ...