开发者社区> 问答> 正文

请问是创建表之后就不能修改表结构了吗?

updatetable没有信息,请问是创建表之后就不能修改表结构了吗?

本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。

展开
收起
初商 2019-09-12 10:21:44 1916 0
1 条回答
写回答
取消 提交回答
  • 三十五、表的创建与使用(修改表结构)不建议使用 当一张数据表创建完成之后,可以针对于它的数据列进行结构变更或者增加新的列,或者删除一个列

    范例:现在有如下一张数据表(编写一个脚本) 在以后的项目的开发之中,需要编写数据库的脚本文件,一般此类文件要求如下: **脚本文件的后缀名称必须是“*.sql” **要编写删除数据表的语法 **创建数据表的语法 **测试数据 **执行事务提交

    -- 删除数据表 DROP TABLE member PURGE; -- 创建数据表 CREATE TABLE member(     mid      NUMBER,     name     VARCHAR2(50) ); -- 测试数据 INSERT INTO member(mid,name) VALUES(10,'张三'); INSERT INTO member(mid,name) VALUES(20,'李四'); -- 事务提交 COMMIT;

    以上的数据表之定义了两个列名称

    1.增加数据表中的数据列 语法: ALTER TABLE 表名称 ADD ( 列名称 类型 [DEFAULT 默认值], 列名称 类型 [DEFAULT 默认值],...);

    范例:添加一列,但是没有默认值 ALTER TABLE member ADD(email VARCHAR2(20)); 增加列之后所有的数据都是null

    范例:添加一列,设置默认值 ALTER TABLE member ADD(sex VARCHAR2(5) DEFAULT '男'); 如果添加的新列存在有默认值,那么所有的数据行的内容都要发生变化

    2.修改表中的数据列,语法: ALTER TABLE 表名称 MODIFY ( 列名称 类型 [DEFAULT 默认值], 列名称 类型 [DEFAULT 默认值],...);

    范例:将name的长度修改为20,默认值设置无名氏 ALTER TABLE member MODIFY(name VARCHAR2(20) DEFAULT '无名氏');

    3.删除列,语法 ALTER TABLE 表名称 DROP COLUMN 列名称;

    范例:删除sex列 ALTER TABLE member DROP COLUMN sex;

    在实际的工作之中,可以将以上的修改操作彻底遗忘,因为在任何的开发之中,表一旦涉及了,开发中就基本上很难修改了。如果真的要进行表结构修改,只有一个原则:表删除重建

    总结:表属于数据库对象的操作,对于数据库的对象操作只有三类语法: **创建对象:CREATE  对象类型  对象名称 ...; **删除对象:DROP  对象类型  对象名称 ...; **修改对象:ALTER  对象类型  对象名称 ...; ———————————————— 版权声明:本文为CSDN博主「花间水漾」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/amuist_ting/article/details/80684854

    2019-09-12 10:38:34
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
MySQL表和索引优化实战 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载