zoukankan      html  css  js  c++  java
  • 创建和管理表(10)

    表的建立

    表的建立语法:

    CREATE TABLE 表名称(
    字段名称 1  字段类型 [DEFAULT 默认值] ,
    字段名称 2  字段类型 [DEFAULT 默认值] ,
    ...
    字段名称 n  字段类型 [DEFAULT 默认值] ,
    )

    复制表的语法:

    CREATE TABLE 表名称 AS (子查询)
    • · 如果现在子查询写的是:SELECT * FROM emp,表示将表结构和表内容一起复制
    • · 如果现在子查询写的是:SELECT * FROM emp WHERE 1=2,加入了一个永远不可能成立的条件,则此时表示的是只复制表结构,但是不复制表内容

    表的删除

    表的删除语法如下:

    DROP TABLE 表名称 ;

    表的修改

    在 SQL 语法操作中,提供了 ALTER 指令,通过 ALTER 指令就可以增加新的列。

    ALTER 指令的语法如下:

    ALTER TABLE 表名称 ADD (列的名称 列的类型 DEFAULT 默认值 , 列的名称 列的类型 DEFAULT 默认值,…)

    修改表结构的语法:

    ALTER TABLE 表名称 MODIFY (列的名称 列的类型 DEFAULT 默认值)
    •  但是,在修改表结构的时候,如果假设数据库中对应的字段里有一个很长的数据,则无法将表的长度缩小,例如:现在在 name 字段中存在一个长度为 20 个字符的字母,原本的 name 可以容纳 200 个内容,但是此时要将 name 字段的长度修改为 10,则肯定无法实现

    在一般的数据库程序开发中,很少去修改表结构,这一点在 IBM DB2 数据库中就没有提供 ALTERTABLE 指令,所以在建表的时候一定要考虑到位。

    表重命名

    在 Oracle 中提供了 RENAME 命令,可以为表重新进行命名,但是此语句只能在 Oracle 中使用。

    重命名语法格式:

    RENAME 旧的表名称 TO 新的表名称 ;

    截断表

    要想清空一张表的数据,但是同时又不需要回滚,可以立刻释放资源就需要使用截断表语法:

    TRUNCATE TABLE 表名称 ;
  • 相关阅读:
    多进程2
    并发编程
    粘包
    socket
    网络编程
    异常与网络编程
    面向对象高级
    多态
    面向对象2
    SQL数据库约束行为---防止数据乱填(即数据规范化)
  • 原文地址:https://www.cnblogs.com/aaron911/p/7768599.html
Copyright © 2011-2022 走看看