欢迎投稿

今日深度:

Oracle 创建和操作表的示例代码,

Oracle 创建和操作表的示例代码,


目录
  • Oracle 创建和操作表
    • 1、创建表
      • 1.1、创建表的基础知识
      • 1.2、处理NULL值
      • 1.3、指定默认值
    • 2、更新表
      • 2.1 主键
      • 2.2 定义外键
    • 3、删除表
      • 4、重命名表

      Oracle 创建和操作表

      本节主要介绍创建、修改和删除表的基本操作

      1、创建表

      创建数据库表一般有两种方式:

      • 使用一个数据库客户端。可用于交互的创建和管理数据库表;
      • 直接利用ORACLE PL/SQL语句操作表

      注意:当使用交互式工具时,实际上使用的是ORACLE SQL语句。不过,无需编写这些语句,界面将为你无缝的生成和执行SQL。

      1.1、创建表的基础知识

      要使用CREATE TABLE创建表,必须指定以下信息:

      • 在关键字CREATE TABLE后面指定的新表的名称
      • 用逗号隔开的表列的名称和定义

      创建表示例:

      CREATE TABLE customers
      (
        cust_id   int      NOT NULL ,
        cust_name char(50) NOT NULL ,
        cust_address char(50)  NULL ,
        cust_city    char(50)  NULL ,
        cust_state   char(5)   NULL ,
        cust_zip     char(10)  NULL ,
        cust_country char(50)  NULL ,
        cust_contact char(50)  NULL ,
        cust_email   char(255) NULL
      );

      际的表定义(所有的列)用圆括号括住。列本身用逗号隔开。这个特定的表由9列组成,每个列定义都以列名(它在表内必须是唯一的)开始,其后接着列的数据类型。

      1.2、处理NULL值

      NULL值代表没有值或者缺少值。每个表列要么是NULL列,要么是NOT NULL列,并且这个状态是在创建时在表定义中指定的。看看下面的示例:

      CREATE TABLE orders
      (
        order_num  int  NOT NULL ,
        order_date date NOT NULL ,
        cust_id    int  NOT NULL
      );

      列都是必需的,因此每一列都包含关键字NOT NULL,这将阻止插入没有值的列。如果某人尝试插入没有值的列,将返回一个错误,并且插入操作将会失败。

      示例:

      CREATE TABLE vendors
      (
        vend_id      int        NOT NULL,
        vend_name    char(50)   NOT NULL ,
        vend_address char(50)   NULL ,
        vend_city    char(50)   NULL ,
        vend_state   char(5)    NULL ,
        vend_zip     char(10)   NULL ,
        vend_country char(50)   NULL
      );

      警告:理解NULL

      不要把NULL值与空字符串混淆。NULL值意指缺少值,它不是空字符串。如果指定“’ '”(两个单引号之间没有任何内容),这在NOT NULL列中是允许的。空字符串是一个有效值,它不是没有值。

      1.3、指定默认值

      在插入行时,如果没有指定值,Oracle允许指定默认值。默认值是在CREATE TABLE语句中的列定义中使用DEFAULT关键字指定的。

      使用示例:

      CREATE TABLE orderitems
      (
        order_num  int          NOT NULL ,
        order_item int          NOT NULL ,
        prod_id    char(10)     NOT NULL ,
        quantity   int          DEFAULT 1 NOT NULL ,
        item_price decimal(8,2) NOT NULL
      );

      提示:使用DEFAULT 代替NULL值

      许多数据库开发人员都使用DEFAULT值代替NULL列,尤其是将在计算或数据分组中使用的列中。

      2、更新表

      要更新表定义,可以使用ALTER TABLE语句,但是理想情况下,在表包含数据之后永远也不应该改变它们。

      要使用ALTER TABLE更改表,必须指定以下信息:

      • 在关键字ALTER TABLE后面指定要改变的表的名称(表必须存在,否则将会生成一个错误);
      • 要执行的更改列表。

      使用示例:

      ALTER TABLE vendors
      ADD vend_phone CHAR(20);

      2.1 主键

      主键值必须是唯一的。也就是说,表中的每一行都必须具有唯一的主键值。如果把单独一列用于主键,那么它必须是唯一的。如果使用多个列,那么它们的组合必须是唯一的。

      可以在CREATE TABLE语句内定义主键。不过,许多开发人员更喜欢先创建表,然后添加所有的键。添加键就是在进行表更新,因此要使用ALTER TABLE命令。

      下面给出了一个示例:

      ALTER TABLE customers ADD CONSTRAINT pk_customers
                            PRIMARY KEY (cust_id);

      2.2 定义外键

      ALTER TABLE也可用于定义外键。

      LTER TABLE orderitems
            ADD CONSTRAINT fk_orderitems_orders FOREIGN KEY (order_num)
            REFERENCES orders (order_num);

      警告:小心的使用ALTER TABLE

      要极其小心地使用ALTER TABLE,在执行该操作前确保具有一组完整的备份(包括模式和数据)。数据库表的改变不能被撤销——如果添加了不需要的列,也许不能移除它们。类似地,如果删除了需要的列,也许就会丢失该列中所有的数据。

      3、删除表

      删除表(实际上是指删除整个表,而不仅仅是内容)。

      DROP TABLE customers2;

      4、重命名表

      要重命名表,可以使用ALTER TABLE语句,如下:

      ALTER TABLE customers2 RENAME TO customers;

      到此这篇关于Oracle 创建和操作表的文章就介绍到这了,更多相关Oracle 创建和操作表内容请搜索PHP之友以前的文章或继续浏览下面的相关文章希望大家以后多多支持PHP之友!

      您可能感兴趣的文章:
      • Oracle创建新undo表空间最佳实践(包含段检查)
      • 使用sqlplus命令行工具为oracle创建用户和表空间
      • winserver 2012R2 安装oracle及创建表流程(推荐)
      • oracle创建表空间、授权、创建用户、导入dmp文件
      • Oracle 创建主键自增表示例代码
      • Oracle数据库如何创建第一张表
      • oracle创建表的方法和一些常用命令
      • shell脚本操作oracle删除表空间、创建表空间、删除用户

      www.htsjk.Com true http://www.htsjk.com/oracle/47662.html NewsArticle Oracle 创建和操作表的示例代码, 目录 Oracle 创建和操作表 1、创建表 1.1、创建表的基础知识 1.2、处理NULL值 1.3、指定默认值 2、更新表 2.1 主键 2.2 定义外键 3、删除表 4、重命名表 Or...
      评论暂时关闭