zoukankan      html  css  js  c++  java
  • SQL: ALTER TABLE Statement (zz)

    SQL: ALTER TABLE Statement


    The ALTER TABLE statement allows you to rename an existing table. It can also be used to add, modify, or drop a column from an existing table.

    //z 2012-08-09 09:36:26 IS2120@csdn.T3277072977[T64,L417,R16,V609]
    Renaming a table

    The basic syntax for renaming a table is:

    ALTER TABLE table_name
     RENAME TO new_table_name;

    For Example:

    ALTER TABLE suppliers
     RENAME TO vendors;

    This will rename the suppliers table to vendors.

    Adding column(s) to a table

    Syntax #1

    To add a column to an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
     ADD column_name column-definition;

    For Example:

    ALTER TABLE supplier
     ADD supplier_name  varchar2(50);

    This will add a column called supplier_name to the supplier table.


    Syntax #2

    To add multiple columns to an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
    ADD ( column_1 column-definition,
      column_2 column-definition,
      ...  
      column_n column_definition );

    For Example:

    ALTER TABLE supplier
    ADD ( supplier_name varchar2(50),
      city varchar2(45) );

    This will add two columns (supplier_name and city) to the supplier table.

    Modifying column(s) in a table

    Syntax #1

    To modify a column in an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
     MODIFY column_name column_type;

    For Example:

    ALTER TABLE supplier
     MODIFY supplier_name   varchar2(100)     not null;

    This will modify the column called supplier_name to be a data type of varchar2(100) and force the column to not allow null values.


    Syntax #2

    To modify multiple columns in an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
    MODIFY ( column_1 column_type,
      column_2 column_type,
      ...  
      column_n column_type );

    For Example:

    ALTER TABLE supplier
    MODIFY ( supplier_name varchar2(100) not null,
      city varchar2(75)   );

    This will modify both the supplier_name and city columns.

    Drop column(s) in a table

    Syntax #1

    To drop a column in an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
     DROP COLUMN column_name;

    For Example:

    ALTER TABLE supplier
     DROP COLUMN supplier_name;

    This will drop the column called supplier_name from the table called supplier.

    Rename column(s) in a table
    (NEW in Oracle 9i Release 2)

    Syntax #1

    Starting in Oracle 9i Release 2, you can now rename a column.

    To rename a column in an existing table, the ALTER TABLE syntax is:

    ALTER TABLE table_name
     RENAME COLUMN old_name to new_name;

    For Example:

    ALTER TABLE supplier
     RENAME COLUMN supplier_name to sname;

    This will rename the column called supplier_name to sname.

    Practice Exercise #1:

    Based on the departments table below, rename the departments table to depts.

    CREATE TABLE departments
    ( department_id number(10) not null,
      department_name varchar2(50) not null,
      CONSTRAINT departments_pk PRIMARY KEY (department_id)
    );      

    Solution:

    The following ALTER TABLE statement would rename the departments table to depts:

    ALTER TABLE departments
     RENAME TO depts;


    Practice Exercise #2:

    Based on the employees table below, add a column called salary that is a number(6) datatype.

    CREATE TABLE employees
    ( employee_number number(10) not null,
      employee_name varchar2(50) not null,
      department_id number(10),  
      CONSTRAINT employees_pk PRIMARY KEY (employee_number)
    );      

    Solution:

    The following ALTER TABLE statement would add a salary column to the employees table:

    ALTER TABLE employees
     ADD salary number(6);


    Practice Exercise #3:

    Based on the customers table below, add two columns - one column called contact_name that is a varchar2(50) datatype and one column called last_contacted that is a date datatype.

    CREATE TABLE customers
    ( customer_id number(10) not null,
      customer_name varchar2(50) not null,
      address varchar2(50),  
      city varchar2(50),  
      state varchar2(25),  
      zip_code varchar2(10),  
      CONSTRAINT customers_pk PRIMARY KEY (customer_id)
    );      

    Solution:

    The following ALTER TABLE statement would add the contact_name and last_contacted columns to the customers table:

    ALTER TABLE customers
    ADD ( contact_name varchar2(50),
      last_contacted date );

    //z 2012-08-09 09:36:26 IS2120@csdn.T3277072977[T64,L417,R16,V609]

    Practice Exercise #4:

    Based on the employees table below, change the employee_name column to a varchar2(75) datatype.

    CREATE TABLE employees
    ( employee_number number(10) not null,
      employee_name varchar2(50) not null,
      department_id number(10),  
      CONSTRAINT employees_pk PRIMARY KEY (employee_number)
    );      

    Solution:

    The following ALTER TABLE statement would change the datatype for the employee_name column to varchar2(75):

    ALTER TABLE employees
     MODIFY employee_name varchar2(75);


    Practice Exercise #5:

    Based on the customers table below, change the customer_name column to NOT allow null values and change the state column to a varchar2(2) datatype.

    CREATE TABLE customers
    ( customer_id number(10) not null,
      customer_name varchar2(50),  
      address varchar2(50),  
      city varchar2(50),  
      state varchar2(25),  
      zip_code varchar2(10),  
      CONSTRAINT customers_pk PRIMARY KEY (customer_id)
    );      

    Solution:

    The following ALTER TABLE statement would modify the customer_name and state columns accordingly in the customers table:

    ALTER TABLE customers
    MODIFY ( customer_name varchar2(50) not null,
      state varchar2(2) );

    Practice Exercise #6:

    Based on the employees table below, drop the salary column.

    CREATE TABLE employees
    ( employee_number number(10) not null,
      employee_name varchar2(50) not null,
      department_id number(10),  
      salary number(6),  
      CONSTRAINT employees_pk PRIMARY KEY (employee_number)
    );      

    Solution:

    The following ALTER TABLE statement would drop the salary column from the employees table:

    ALTER TABLE employees
     DROP COLUMN salary;


    Practice Exercise #7:

    Based on the departments table below, rename the department_name column to dept_name.

    CREATE TABLE departments
    ( department_id number(10) not null,
      department_name varchar2(50) not null,
      CONSTRAINT departments_pk PRIMARY KEY (department_id)
    );      

    Solution:

    The following ALTER TABLE statement would rename the department_name column to dept_name in the departments table:

    ALTER TABLE departments
     RENAME COLUMN department_name to dept_name;

    //z 2012-08-09 09:36:26 IS2120@csdn.T3277072977[T64,L417,R16,V609]


  • 相关阅读:
    eclipse发布项目到tomcat部署目录
    变量 声明、存储和范围
    十周 工程2 员工有自己的工资 扩张
    使用Xshell生成key,避免password登录linux
    android模拟器 一个错误:X Error of failed request: BadRequest (invalid request code or no such operation)
    JNI 详细解释
    设计模式(Abstract Factory)抽象工厂
    Laravel创建Model
    【cocos2d-x】3.0使用cocos-console创建,编,部署游戏
    UF访问,一些对用友最新的旗舰级产品U9一些引进(图像)
  • 原文地址:https://www.cnblogs.com/IS2120/p/6745858.html
Copyright © 2011-2022 走看看