Oracle管理表

来源:互联网 发布:体体育训练软件 编辑:程序博客网 时间:2024/06/08 02:50

一 创建表

1、基本语法
CREATE TABLE table_name
(
    column_name datatype,...
)
2、实例:创建用户信息表
所需字段:编号,用户名,密码,邮箱,注册时间
  1. SQL> create table userinfo
  2. 2(id number(6,0),
  3. 3 username varchar2(20),
  4. 4 userpwd varchar2(20),
  5. 5 email varchar2(30),
  6. 6 regdate date);
  7. 表已创建。
  8. SQL> desc userinfo
  9. 名称是否为空?类型
  10. -----------------------------------------------------------------------------
  11. ID NUMBER(6)
  12. USERNAME VARCHAR2(20)
  13. USERPWD VARCHAR2(20)
  14. EMAIL VARCHAR2(30)
  15. REGDATE DATE
 
二 修改表
1、添加字段
ALTER TABLE table_name
ADD column_name datatype;
  1. SQL> alter table userinfo
  2. 2 add remarks varchar2(500);
  3. 表已更改。
  4. SQL> desc userinfo
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. ID NUMBER(6)
  8. USERNAME VARCHAR2(20)
  9. USERPWD VARCHAR2(20)
  10. EMAIL VARCHAR2(30)
  11. REGDATE DATE
  12. REMARKS VARCHAR2(500)
2、更改字段数据类型
ALTER TABLE table_name
MODIFY column_name datatype;
  1. SQL> alter table userinfo
  2. 2 modify remarks varchar2(400);
  3. 表已更改。
  4. SQL> desc userinfo
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. ID NUMBER(6)
  8. USERNAME VARCHAR2(20)
  9. USERPWD VARCHAR2(20)
  10. EMAIL VARCHAR2(30)
  11. REGDATE DATE
  12. REMARKS VARCHAR2(400)
  13. SQL> alter table userinfo
  14. 2 modify userpwd number(6,0);
  15. 表已更改。
  16. SQL> desc userinfo
  17. 名称是否为空?类型
  18. -----------------------------------------------------------------------------
  19. ID NUMBER(6)
  20. USERNAME VARCHAR2(20)
  21. USERPWD NUMBER(6)
  22. EMAIL VARCHAR2(30)
  23. REGDATE DATE
  24. REMARKS VARCHAR2(400)
3、删除字段
ALTER TABLE table_name
DROP COLUMN column_name;
  1. SQL> alter table userinfo
  2. 2 drop column remarks;
  3. 表已更改。
  4. SQL> desc userinfo
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. ID NUMBER(6)
  8. USERNAME VARCHAR2(20)
  9. USERPWD NUMBER(6)
  10. EMAIL VARCHAR2(30)
  11. REGDATE DATE
4、修改字段名
ALTER TABLE table_name
RENAME COLUMN column_name TO
new_column_name;
  1. SQL> alter table userinfo
  2. 2 rename column email to new_email;
  3. 表已更改。
  4. SQL> desc userinfo
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. ID NUMBER(6)
  8. USERNAME VARCHAR2(20)
  9. USERPWD NUMBER(6)
  10. NEW_EMAIL VARCHAR2(30)
  11. REGDATE DATE 
5、修改表名
RENAME table_name TO new_table_name;
  1. SQL> rename userinfo to new_userinfo;
  2. 表已重命名。
  3. SQL> desc new_userinfo
  4. 名称是否为空?类型
  5. -----------------------------------------------------------------------------
  6. ID NUMBER(6)
  7. USERNAME VARCHAR2(20)
  8. USERPWD NUMBER(6)
  9. NEW_EMAIL VARCHAR2(30)
  10. REGDATE DATE
 
三 删除表
删除表中的全部数据,并不是将表删除掉,这种删除比用delete删除数据速度要快很多。
TRUNCATE TABLE table_name
  1. SQL> truncate table new_userinfo;
  2. 表被截断。
  3. SQL> desc new_userinfo;
  4. 名称是否为空?类型
  5. -----------------------------------------------------------------------------
  6. ID NUMBER(6)
  7. USERNAME VARCHAR2(20)
  8. USERPWD NUMBER(6)
  9. NEW_EMAIL VARCHAR2(30)
  10. REGDATE DATE
DROP TABLE table_name;
  1. SQL> drop table new_userinfo;
  2. 表已删除。
  3. SQL> desc new_userinfo;
  4. ERROR:
  5. ORA-04043:对象 new_userinfo 不存在
原创粉丝点击