Alter table after keyword in 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 中的关键字后更改表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Oracle 中的关键字后更改表
基础教程推荐
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- 无法解决整理冲突 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 在 SQL 中连接多个表 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
