学习Oracle的历程 (三)

学习Oracle的历程 (三)学习就在于坚持,在于持之以恒的去努力! 今天,我们接着学习Oracle的相关内容, (#^.^#)重点来了! 因为今天的是关于语句操作的所以小喵就只留截图了哦! 一. 表的操作 1) 创建表 语法1…

学习Oracle的历程 (三)

    今天,我们接着学习Oracle的相关内容, (#^.^#)重点来了!

    因为今天的是关于语句操作的所以小喵就只留截图了哦!

一. 表的操作

    1) 创建表

        语法1 : 创建一个新表

create table 表名(
 字段名   类型   [约束],
    字段名2  类型   [约束],
);

代码100分

   学习Oracle的历程 (三)

 

     语法2:拷贝一个表(结构 + 数据 )

代码100分create table 新表名 as 查询语句

    学习Oracle的历程 (三)

数据类型

分类                 类型                             描述                                                  
数值类型

 

NUMBER    表示整数和浮点数
INT/INTEGER整数
FLOAT双精度浮点数
字符类型

 

CHAR(3)定长字符,最大2000B    
NCHAR(1)定长unicode 字符,最大1000B  
VARCHAR23变长字符,最大4000B
NVARCHAR2(1)变长unicode字符,最大1000B
LONG变长字符类型,最大4GB(已淘汰)
日期类型DATE日期,精确到秒
TIMESTAMP日期类型,精确到小数秒
大对象类型LOB8-12TB数据 并可分段处理
CLOB存储字符,最大可以存4G
BLOB存储图像、声音、视频等二进制数据,最多可以存4G

 

2) 修改表

alter table 表名 具体操作  数据;
-- 添加
alter table 表名 add (列描述,....);
-- 修改
alter table 表名 modify (列描述,....);
-- 删除列
alter table 表名 drop column 列名;

学习Oracle的历程 (三)

 

3)删除表

代码100分drop table 表名

学习Oracle的历程 (三)

 

二.约束

    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

    学习Oracle的历程 (三)

学习Oracle的历程 (三)

        2>唯一约束  —— unique

学习Oracle的历程 (三)

            3>非空约束   —–   not null

        学习Oracle的历程 (三)

 

       4>默认约束  —– default

学习Oracle的历程 (三)

         5> 检查约束  —– check

学习Oracle的历程 (三)

            6> 外键约束  —- foreign key

学习Oracle的历程 (三)

   4.约束的应用选择

在应用开发中,主键约束一般要设置,其他如非空、唯一、默认值、检查等约束,可以根据实际情况来添加。而外键约束是否要设置,是存在一点争议的。(争议在性能上

一般建议:

  1. 在大型系统中(性能要求不高,安全要求高),可以使用外键;在大型系统中(性能要求高,安全自己控制),不用外键;小系统随便。
  2. 不用外键的话,可以用程序控制数据一致性和完整性,可以在代码的数据层通过代码来保证一致性和完整性。
  3. 用外键要适当,不能过分追求

总结 :

在项目中,我们只使用了主键约束,其余约束没有使用。因为约束越多,

数据库占用的空间越大、执行的速度越慢,而且一般违反了约束,我们无法控制,

所以我们的项目中是通过页面js脚本以及java 的业务层对 非法数据进行过滤.

 

这样我们的约束就告一段落了,其他就需要小伙伴们勤加练习了!

 

三 . DML 语句/操作

    1) 添加

    学习Oracle的历程 (三)

    2) 修改

学习Oracle的历程 (三)

    3)删除

学习Oracle的历程 (三)

比较truncatedelete实现数据删除?

  1. delete删除的数据可以rollback
  2. delete删除可能产生碎片,并且不释放空间
  3. truncate是先摧毁表结构,再重构表结构

 

今天的知识就分享到这里了,

觉得小喵分享的知识对你有帮助的话,就留下你的痕迹吧!

(^_^)~喵~!!

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8297.html

(0)
上一篇 2023-03-03
下一篇 2023-03-04

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注