一,数据类型

数据类型的字面意思是数据的类型,即数据含有不同的种类。常用的数据类型大体分为以下三类:
字符型:用来存放字符型数据,字符包括字母、符号、数字、汉字以及以上所有的组合。
数值型:仅有数字,没有其他任何内容,可直接用来计算。
日期型:存放的是一个完整的时间点,所谓完整,即包括年月日时分秒等。
注意:有些情况下某种数据会以另一种数据类型存储,判断数据类型不要只看表面,要看其根本
二,字段属性
字段属性:
每个数据有自己的一个属性、每个字段也有自己的一个属性。字段的属性在建表时设定,每个字段只能存放特定属性的数据。同时每个字段不仅包括数据类型,对于字符和数值还包括数据的精度。比如字符型字段能存放最长多少单位的数据;数值型字段能存放多长单位的数据,数值的小数部分有多少位。
即:数据类型+精度组成了字段属性。
字符型:
CHAR(n):固定长度字符串,该类型的字段中存储固定长度的字符型数据。括号中的n表示字段精度。存入该字段的数据最长不得超过n,若长度不足n,则在右侧以空格补全凑齐n位长度。
VARCHAR2(n):可变长度字符串,该类型的字段中存储可变长度的字符型数据。括号中的n表示字段精度。存入该字段的数据最长不得超过n,若长度不足n,则以实际长度存储数据。
数值型:
NUMBER(p,s):该类型的字段中存放数值型数据。括号内的p表示数值的总长度(不含小数点和负号),s表示小数位的长度,即整数位的长度为p-s。
数值是否超长的判定方式:
1.若小数位的长度不足,则以0补全;若小数位的长度超长,则超出部分按四舍五入处理
2.处理后的小数位加上整数位的长度不能超出总精度p,否则会报错
(另还能见到INT类型,该字段仅存整数)
日期型:
DATE:最常见的日期型数据,固定存储7个字节,包括世纪、年、月、日、时、分、秒,但并不一定都显示。可以通过该种类型的数据查到关于日期的以上信息及季度、星期等信息。
另外日期型数据的最终显示格式与访问数据库的工具的设置有关。
三,DML-数据增删改
拓展:手动增删改
SELECT * FROM TB_NAME FOR UPDATE; --全局修改
SELECT * FROM TB_NAME WHERE CONDITION FOR UPDATE; --部分修改
操作步骤:1.执行语句后,目标表的状态将由不可解锁转为可解锁状态,同时【提交】和【回滚】按钮开放
2.通过查询结果上方的小锁对表解锁
3.解锁后直接在查询结果中进行修改
4.修改结束后点击绿色对勾进行数据合法性检测
5.再点击小锁使表回到锁定状态
6.最后点击【提交】按钮使修改生效或点击【回滚】按钮取消刚才的修改
手动增删改
应用场景:
1.小范围数据改动
2.客户通过EXCEL表格提供少量数据,要求导入到数据库中,可通过该方法直接复制粘贴到表中。
总结:改动小、数据少
注意:
虽然手动增删改的方式操作简单,但缺点也很多,比如对于大量数据操作会容易崩溃、不能留下操作痕迹、不能用于自动化、非常依赖工具等,因此工作中更多的是使用代码来进行增删改。
代码增删改包括:
INSERT-增加数据
DELETE-删除数据
UPDATE-更新数据
MERGE-并入数据(后期补充)

四,代码增删改-数据增加
语法:
一.单条数据的插入-录入确定内容
(适用少量数据录入或人工操作录入)
INSERT INTO TB_NAME (COL_LIST)
VALUES (DATA_LIST);
二.多条数据的插入-插入查询结果
(适用各种场景尤其是带有复杂逻辑的自动化录入)
INSERT INTO TB_NAME1 (COL_LIST)
SELECT COL_LIST FROM TB_NAME2;
注意点:
1.语法一每次仅能增加一条数据;
2.语法二每次增加数据量取决于查询语句,语法中的查询语句与一般的查询语句在语法规则上无任何区别;
3.指定插入的数据可与表结构在数量或顺序上不一致,此时字段列表必须与数据列表在列数、顺序、属性、内容上完全一致,否则会报错;
4.若插入的数据在列数、顺序、属性、内容上与表结构完全一致,可在语句中省略字段列表。
语法:
DELETE FROM TB_NAME; --全部数据的删除
DELETE FROM TB_NAME WHERE CONDITION; --有条件的数据删除
注意:
1.手动执行删除时,删除语句最好由查询语句变更得到,提交前一定要先确认好删除结果;
2.WHERE子句与查询中的WHERE子句用法完全一致
代码增删改-数据更新
语法:
UPDATE TB_NAME SET COL1 = EXPR1 [,COL2 = EXPR2,....] [WHERE CONDITION];
注意:
1.更新后的结果可以是某个固定内容,或是函数处理后的结果,或是运算,或是子查询(单行单列);
2.更新时等号左边是待更新的字段,右边是更新后的结果,顺序不要写反了。
整体总结:
1.对数据源的任何修改,都需要经过提交才能最终生效,提交前若是对所做的修改不满意,可通过回滚来取消修改。若未提交,则做出的修改仅能在当前窗口临时生效,其他会话窗口查不到当前的修改。
2.无论什么类型的何种DML操作,在操作过程中都会产生回滚日志,以用于操作的回滚或数据的恢复。日志的生成可通过代码指令或参数设置来取消,但该操作非常危险,一旦数据库运行出现错误,若是缺少相应的日志,数据就有可能会丢失。
