在 Oracle 中的关键字后更改表

Alter table after keyword in Oracle(在 Oracle 中的关键字后更改表)
本文介绍了在 Oracle 中的关键字后更改表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ALTER TABLE testTable ADD column1 NUMBER(1) DEFAULT 0 NOT NULL AFTER column2;

为什么我也不能在 Oracle 中使用 mySql 语法?上述命令适用于 MySql.你能给我一个有效的等价物吗?

Why can't I use mySql syntax in Oracle too? The above command works in MySql. Can you give me an equivalent that works?

Error report:
SQL Error: ORA-01735: invalid ALTER TABLE option
01735. 00000 -  "invalid ALTER TABLE option"

<小时>

我在问是否有任何方法可以在我提供的 Oracle 命令中使用 after 子句?


I am asking if there is any way to use after clause in Oracle command that I provided?

推荐答案

因为 SQL 是一种关系代数.它一点也不关心表中列的位置",只关心它们是否存在.

Because SQL is a relational algebra. It doesn't care one bit about "where" columns are located within a table, only that they exist.

要让它在 Oracle 中工作,只需去掉 after 子句.alter table 的 Oracle 文档在 这里 但归结为:

To get it to work in Oracle, just get rid of the after clause. The Oracle documentation for alter table is here but it boils down to:

alter table testTable
    add ( column1 number(1) default 0 not null )

alter table 命令没有没有 after 子句.

这篇关于在 Oracle 中的关键字后更改表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

SQL to Generate Periodic Snapshots from Transactions Table(用于从事务表生成定期快照的SQL)
MyBatis support for multiple databases(MyBatis支持多个数据库)
Oracle 12c SQL: Missing column Headers in result(Oracle 12c SQL:结果中缺少列标题)
SQL query to find the number of customers who shopped for 3 consecutive days in month of January 2020(查询2020年1月连续购物3天的客户数量)
How to get top 10 data weekly (This week, Previous week, Last month, 2 months ago, 3 month ago)(如何每周获取前十大数据(本周、前一周、上个月、2个月前、3个月前))
Select the latest record for an Id per day - Oracle pl sql(选择每天ID的最新记录-Oracle pl SQL)