Oracle数据库:SQL语句详解-表创建与约束实例

需积分: 10 10 下载量 91 浏览量 更新于2024-08-15 收藏 3.47MB PPT 举报
在Oracle数据库中,创建表时使用约束是确保数据质量和一致性的重要步骤。本文将详细介绍几种常见的SQL语句约束,包括检查约束、唯一性约束和非空约束。 1. 检查约束(Check): 检查约束允许我们在定义表字段时设置条件,如标题中的例子: ``` CREATE TABLE Mytest ( id number check(id > 10), name varchar2(32) ); ``` 这个约束确保`id`字段的值始终大于10,如果尝试插入小于或等于10的值,操作将被拒绝。 2. 非空约束(Not NULL): 在第二个示例中,`name`字段被标记为非空,意味着该字段不能包含NULL值: ``` CREATE TABLE Mytest ( id number check(id > 10), name varchar2(32) not null ); ``` 如果试图在`name`字段插入NULL,将会触发错误。 3. 唯一性约束(UNIQUE): 第三个示例中的`id`字段被声明为唯一,这意味着每个表中`id`值必须是唯一的: ``` CREATE TABLE Mytest ( id number UNIQUE, name varchar2(32) not null ); ``` 这种约束防止有重复的`id`值存在。 SQL查询与约束的应用: - 查询语句的基本结构通常包括`SELECT`关键字,选择要返回的列,`FROM`关键字指定查询的表,以及可能的`WHERE`子句来过滤数据。例如,查询所有员工信息: ``` SELECT * FROM s_emp; ``` - 指定列查询可以更具体,如部门ID和工资: ``` SELECT dept_id, salary FROM s_emp; ``` - 运用算数表达式计算年薪,如工资乘以12: ``` SELECT salary * 12 AS '年薪' FROM s_emp; ``` - 括号用于调整运算顺序,确保12乘以(salary+100)的正确执行: ``` SELECT last_name, salary, 12 * (salary + 100) FROM s_emp; ``` 总结来说,本篇教程详细讲解了如何在Oracle SQL中使用约束来创建表,并展示了如何在查询中应用这些约束来确保数据的准确性和完整性。学习者可以借此理解如何有效地设计和管理数据库,避免数据错误。同时,对于实际编写SQL查询时如何结合约束进行操作,也提供了实例演练。