网站首页 > 技术文章 正文
Oracle数据类型
数值类型(NUMBER):表示数字类型
语法:NUMBER(p,s) 其中p表示数字的有效位数,s表示小数位数
有效位数:左往右第一个不为0的数开始 (包括小数位)
如:salary number(6,2)表示有效位数是6位,小数位数是2位
最大值9999.99
如果要表示整数时,小数位数参数不写或写0 即(5)、(5,0)
字符类型(CHAR和VARCHAR2)
CHAR:表示固定长度的字符类型,定义为CHAR(N)形式
N表示占用的字节数,最大长度是2000字节
如:name CHAR(20),表示name列中最多可以存储20个字节的字符串,并且占用的空间是固定的20字节
VARCHAR2:表示长度可变的字符类型,定义格式为VARCHAR2(N),
N表示最多可占用的字节数,最大长度是4000字节
如:position VARCHAR2(30) 表示position列中最多可存储长度为30个字节长度的字符串,根据其中保存的数据长度,占用的空间是变化的
日期类型(DATE):用于定义日期和时间的数据,长度是7字节
注意:Oracle中默认的日期格式是 DD-MON-YY(简写的月份)
eg:30-11月-16 输入时需要加单引号
TIMESTAMP与DATE类似,区别在于时区,精确到毫秒
修改日期的默认格式
语法:
alter session set nls_date_format=‘yyyy-mm-dd’ 只在当前界面有效
其他类型
CLOB(Character Large Object) 字符型大对象,最大能存储4G字符
BLOB(Binary Large Object) 二进制数据可以存放图片声音 最大能存储4G字符
查看表格:
查看当前用户下所有的表格:
select table_name from user_tables;
查看表结构
Desc 表名;
查询数据表中的内容
select * from 表名;
创建表格:
create table tableName(
colunmn dateType,
colunmn dateType,
colunmn dateType
);
注:每个列名占一行,列名与列名直接逗号隔开
向表中插入数据:
insert into tablename(字段名,字段名,字段名)values(内容,内容,内容);
如果全部列都插入内容:
insert into tablename values(内容,内容,内容);
注:没有内容的列,可以使用NULL填充。
设置格式
SET LINESIZE200;设置行缓存,默认值为80
SHOW LINESIZE; 查看行缓存
SET PAGESIZE20; 设置页显示行数,默认是14
SHOW PAGESIZE; 查看页显示行数
将表格内容格式化显示:
column 字段名 format 占位符 (用来设置字段所占长度)
数组类型采用9作为占用符(9999/9999.99),字符型以a字符长度表示 (a10)
删除表格:
drop table name;
修改表名:
RENAME old_name TOnew_name;
增加列:
ALTER TABLE的ADD语句实现
ALTER TABLEtable_nameADD(columnName date Type); (列名,列类型)
注:列只能增加在最后,不能插入到现有的列中。
删除列:
ALTER TABLE 的DROP语句实现
ALTER TABLEtable_name DROP(columnName);
注:列中有数据也可以删除,需要删除此字段占据的长度和数据,并释放在数据块中占据的空间,如果表数据比较大,删除字段时间可能较长
修改列:
建表之后,可以改变表中列的数据类型,长度,默认值,修改仅对修改以后插入的数据有效,
如果把列的长度由大改到小,有可能不成功
ALTER TABLEtable_nameMODIFY(columnName,dateType);
insert语句:给数据表中增加数据
insert into table_name(colunname…)values(values…);
注意:执行DML操作后,需要再执行COMMIT(提交)语句,才能确认此操作
DATE 如果插入日期类型,需要考虑日期的格式,
日期默认格式:'dd-mon-yy'
UPDATE语句:更新表中的记录
语法:
UPDATE table_name SET columnName=value,columnName=value......;
修改多列以逗号隔开
注意:如果没有WHERE子句,则表示修改全表中的数据
DELETE删除表中的记录
语法:DELETE[FROM] table_name WHERE condition;
[]为可有可无 如果不带where 表示删除所有,有where只删除符合条件的
在DDL语句中的TRUNCATE语句,同样有删除表数据的作用
TRUNCATE和DELETE的区别:
DELETE可以按条件选择性删除,是DML语句,可以回退(回收站)
TRUNCATE删除全表表数据,是DBL语句,立即生效不可回退(彻底清除)
如果删除全表数据,且数据流大 TRUNCATE效率高
猜你喜欢
- 2024-10-30 oracle——字符串转(日期或者日期字符串)
- 2024-10-30 Ask Oracle 天秤座1月份,坚持理想与信念,成功就在不远方
- 2024-10-30 使用ORA_ROWSCN伪列获取表最后的DML时间
- 2024-10-30 前后台时间日期格式化,数据库查询时间不对,下次不要困扰你了
- 2024-10-30 美创科技运维日记|关于Oracle数据库的软件支持周期的那些事
- 2024-10-30 Oracle数据库定时器Job oracle数据库定时器用法
- 2024-10-30 oracle三大类型(varchar2,number,date)与隐式数据类型转换
- 2024-10-30 SQL日期函数大全 看这一篇就够 sql日期函数的使用方法
- 2024-10-30 oracle——ora-01839 指定的日期无效,interval '2' month的问题
- 2024-10-30 数据库中常用的日期函数 数据库日期型
你 发表评论:
欢迎- 637℃几个Oracle空值处理函数 oracle处理null值的函数
- 629℃Oracle分析函数之Lag和Lead()使用
- 618℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 613℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 612℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 603℃【数据统计分析】详解Oracle分组函数之CUBE
- 591℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 577℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)