Oracle 修改数据库库表的各种情况和SQL语句
2012-11-03 12:54
375 查看
由于最近需要程序生成DDL,修改Oracle数据库的库表,因此我总结了一下修改Oracle库表的情况,总结如下:
1、新增一列:ALTER TABLE table_name ADD (column_name VARCHAR2(33 , 2) DEFAULT '2' NOT NULL)
2、删除一列:ALTER TABLE table_name DROP COLUMN column_name
3、修改数据类型:
有数据:ORA-01439: 要更改数据类型,则要修改的列必须为空 (empty)
无数据:ALTER TABLE table_name MODIFY (column_name NUMBER(222,2))
4、修改默认值:
数据类型一致:ALTER TABLE table_name MODIFY (column_name DEFAULT newVlaue)
数据类型不一致:ORA-02262: 对列默认值表达式进行类型检查时, 出现 ORA-932
5、修改NULLABLE:
将NULL修改为NOT NULL时:
存在空值:ORA-02296: 无法启用 (TABLE_NAME) - 找到空值
不存在空值:ALTER TABLE table_name MODIFY (column_name NOT NULL)
将NOT NULL 修改为NULL时: ALTER TABLE table_name MODIFY (column_name NULL)
6、修改字段名:
名称符合: ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name
名称不符合:ORA-00904: : 无效的标识符
7、修改表名:
名称符合: ALTER TABLE table_name RENAME TO new_table_name;
名称不符合: ORA-00903: 表名无效
8、修改字段长度:
数据中存在长度大于新值时: ORA-01441: 无法减小列长度, 因为一些值过大
符合条件: ALTER TABLE table_name MODIFY (column_name VARCHAR2(newLength))
注意:Oracle对于表名和字段名的限制为:
1、要以字母开头
2、包含字母和数字,以及# $
3、不能超过30个字符
如果有遗漏,还请大家帮忙补上。。。
转:http://ppzh.iteye.com/blog/426991
1、新增一列:ALTER TABLE table_name ADD (column_name VARCHAR2(33 , 2) DEFAULT '2' NOT NULL)
2、删除一列:ALTER TABLE table_name DROP COLUMN column_name
3、修改数据类型:
有数据:ORA-01439: 要更改数据类型,则要修改的列必须为空 (empty)
无数据:ALTER TABLE table_name MODIFY (column_name NUMBER(222,2))
4、修改默认值:
数据类型一致:ALTER TABLE table_name MODIFY (column_name DEFAULT newVlaue)
数据类型不一致:ORA-02262: 对列默认值表达式进行类型检查时, 出现 ORA-932
5、修改NULLABLE:
将NULL修改为NOT NULL时:
存在空值:ORA-02296: 无法启用 (TABLE_NAME) - 找到空值
不存在空值:ALTER TABLE table_name MODIFY (column_name NOT NULL)
将NOT NULL 修改为NULL时: ALTER TABLE table_name MODIFY (column_name NULL)
6、修改字段名:
名称符合: ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name
名称不符合:ORA-00904: : 无效的标识符
7、修改表名:
名称符合: ALTER TABLE table_name RENAME TO new_table_name;
名称不符合: ORA-00903: 表名无效
8、修改字段长度:
数据中存在长度大于新值时: ORA-01441: 无法减小列长度, 因为一些值过大
符合条件: ALTER TABLE table_name MODIFY (column_name VARCHAR2(newLength))
注意:Oracle对于表名和字段名的限制为:
1、要以字母开头
2、包含字母和数字,以及# $
3、不能超过30个字符
如果有遗漏,还请大家帮忙补上。。。
转:http://ppzh.iteye.com/blog/426991
相关文章推荐
- Oracle 修改数据库库表的各种情况和SQL语句
- oracle查看数据库表空间使用情况sql语句
- Oracle 查看表空间的大小及使用情况sql语句(oracle数据库维护精品)
- 查询oracle 数据库 SQL语句执行情况
- Oracle 查看表空间的大小及使用情况sql语句
- 源码-Oracle数据库管理-第十七章-动态SQL语句-Part 5(动态SQL的性能优化技巧)
- 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
- sql语句查询Oracle|sql server|access 数据库里的所有表名,字段名
- oracle v$sqlarea分析SQL语句使用资源情况
- Oracle 查看表空间的大小及使用情况sql语句
- 如何在不安装Oracle客户端的情况下,使用PL/SQL Developer连接数据库
- Oracle 数据库监控SQL语句
- 用SQL语句对数据库字段值做批量修改
- [数据库测试]强烈推荐一个python ODBC数据源插件,可支持Oracle,Db2,Mysql,Sql-server以及各种数据库版本,附例子和测试程序
- 各种数据库分页查询sql语句大全
- Oracle 查看表空间的大小及使用情况sql语句
- Oracle 分析SQL语句使用资源情况
- [转]oracle v$sqlarea 分析SQL语句使用资源情况
- Oracle 查看表空间的大小及使用情况sql语句
- Oracle 常用数据库sql语句操作