大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说学习Oracle的历程 (三),希望您对编程的造诣更进一步.
今天,我们接着学习Oracle的相关内容, (#^.^#)重点来了!
因为今天的是关于语句操作的所以小喵就只留截图了哦!
一. 表的操作
1) 创建表
语法1 : 创建一个新表
create table 表名( 字段名 类型 [约束], 字段名2 类型 [约束], );
代码100分
语法2:拷贝一个表(结构 + 数据 )
代码100分create table 新表名 as 查询语句
数据类型
分类 | 类型 | 描述 |
数值类型
| NUMBER | 表示整数和浮点数 |
INT/INTEGER | 整数 | |
FLOAT | 双精度浮点数 | |
字符类型
| CHAR(3) | 定长字符,最大2000B |
NCHAR(1) | 定长unicode 字符,最大1000B | |
VARCHAR2(3) | 变长字符,最大4000B | |
NVARCHAR2(1) | 变长unicode字符,最大1000B | |
日期类型 | DATE | 日期,精确到秒 |
TIMESTAMP | 日期类型,精确到小数秒 | |
大对象类型 | LOB | 8-12TB数据 并可分段处理 |
CLOB | 存储字符,最大可以存4个G | |
BLOB | 存储图像、声音、视频等二进制数据,最多可以存4个G |
2) 修改表
alter table 表名 具体操作 数据;
-- 添加
alter table 表名 add (列描述,....);
-- 修改
alter table 表名 modify (列描述,....);
-- 删除列
alter table 表名 drop column 列名;
3)删除表
代码100分drop table 表名
二.约束
1. 约束的概念及作用
约束是可以更好的保证数据库数据的完整性和一致性的一套机制。
约束可以限制加入表的数据的类型。
如果存在依赖关系,约束可以防止错误的删除数据,也可以级联删除数据。
数据库的约束可以认为是对表的数据的一种规则。
2. 约束创建的时机
创建表的时候,同时创建约束。
表结构创建完成后,可以再添加约束。
3. 常见的约束类型
> PRIMARY KEY 主键约束
> NOT NULL 非空约束
> UNIQUE 唯一约束
> DEFAULT 默认约束
> CHECK—用来检查一个字段的值是否符合某表达式,表达式的结果必须是布尔值。
> FOREIGN KEY 外键约束
关键字 | 描述 | 特点 |
---|---|---|
primary key | 关键字约束 | 被关键字约束修饰的列 不允许为空,不允许重复 |
not null | 非空约束 | 被非空约束修饰的列 不允许为空 |
unique | 唯一约束 | 被唯一约束修饰的列 不允许重复 |
default | 默认约束 | 被默认约束修饰的列 如果只为null,使用默认值 |
foreign key | 外键约束 | 通过主外键关系描述一对多关系 |
check | 检查约束 | 被检查约束修饰的列 修改数据时,使用检查的条件 进行校验 |
1> 主键约束 —– primary key
2>唯一约束 —— unique
3>非空约束 —– not null
4>默认约束 —– default
5> 检查约束 —– check
6> 外键约束 —- foreign key
4.约束的应用选择
在应用开发中,主键约束一般要设置,其他如非空、唯一、默认值、检查等约束,可以根据实际情况来添加。而外键约束是否要设置,是存在一点争议的。(争议在性能上)
一般建议:
- 在大型系统中(性能要求不高,安全要求高),可以使用外键;在大型系统中(性能要求高,安全自己控制),不用外键;小系统随便。
- 不用外键的话,可以用程序控制数据一致性和完整性,可以在代码的数据层通过代码来保证一致性和完整性。
- 用外键要适当,不能过分追求。
总结 :
在项目中,我们只使用了主键约束,其余约束没有使用。因为约束越多,
数据库占用的空间越大、执行的速度越慢,而且一般违反了约束,我们无法控制,
所以我们的项目中是通过页面js脚本以及java 的业务层对 非法数据进行过滤.
这样我们的约束就告一段落了,其他就需要小伙伴们勤加练习了!
三 . DML 语句/操作
1) 添加
2) 修改
3)删除
比较truncate与delete实现数据删除?
- delete删除的数据可以rollback
- delete删除可能产生碎片,并且不释放空间
- truncate是先摧毁表结构,再重构表结构
今天的知识就分享到这里了,
觉得小喵分享的知识对你有帮助的话,就留下你的痕迹吧!
(^_^)~喵~!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8297.html