This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new 2bb4554e882 Enhanced Oracle alter database RECOVER syntax (#27246)
2bb4554e882 is described below
commit 2bb4554e882fe7bbf74d02b461017b4eedcb734d
Author: niu niu <[email protected]>
AuthorDate: Tue Jul 18 08:06:04 2023 +0800
Enhanced Oracle alter database RECOVER syntax (#27246)
---
.../sql/dialect/oracle/src/main/antlr4/imports/oracle/DDLStatement.g4 | 2 +-
test/it/parser/src/main/resources/case/ddl/alter-database.xml | 1 +
test/it/parser/src/main/resources/sql/supported/ddl/alter-database.xml | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git
a/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DDLStatement.g4
b/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DDLStatement.g4
index 7fafe245dc8..19b594951f1 100644
--- a/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DDLStatement.g4
+++ b/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DDLStatement.g4
@@ -1387,7 +1387,7 @@ generalRecovery
;
fullDatabaseRecovery
- : STANDBY? DATABASE
+ : STANDBY? DATABASE?
((UNTIL (CANCEL | TIME dateValue | CHANGE NUMBER_ | CONSISTENT)
| USING BACKUP CONTROLFILE
| SNAPSHOT TIME dateValue
diff --git a/test/it/parser/src/main/resources/case/ddl/alter-database.xml
b/test/it/parser/src/main/resources/case/ddl/alter-database.xml
index 48c64a792cc..61c8b8a6ea2 100644
--- a/test/it/parser/src/main/resources/case/ddl/alter-database.xml
+++ b/test/it/parser/src/main/resources/case/ddl/alter-database.xml
@@ -68,6 +68,7 @@
<alter-database
sql-case-id="alter_database_add_logfile_group_size_m_block_size" />
<alter-database sql-case-id="alter_database_add_logfile_thread_group" />
<alter-database sql-case-id="alter_database_add_logfile_with_size_m" />
+ <alter-database sql-case-id="alter_database_recover_automatic_until_time"
/>
<alter-database
sql-case-id="alter_database_add_logfile_member_reuse_to_group" />
<alter-database sql-case-id="alter_database_add_logfile_group" />
<alter-database sql-case-id="alter_database_drop_logfile_member" />
diff --git
a/test/it/parser/src/main/resources/sql/supported/ddl/alter-database.xml
b/test/it/parser/src/main/resources/sql/supported/ddl/alter-database.xml
index f549c1e9082..c1dfc985b58 100644
--- a/test/it/parser/src/main/resources/sql/supported/ddl/alter-database.xml
+++ b/test/it/parser/src/main/resources/sql/supported/ddl/alter-database.xml
@@ -68,6 +68,7 @@
<sql-case id="alter_database_add_logfile_group_size_m_block_size"
value="ALTER DATABASE ADD LOGFILE GROUP 10 ('/oracle/dbs/log1c.rdo',
'/oracle/dbs/log2c.rdo') SIZE 100M BLOCKSIZE 512" db-types="Oracle" />
<sql-case id="alter_database_add_logfile_thread_group" value="ALTER
DATABASE ADD LOGFILE THREAD 5 GROUP 4 ('diska:log4.log', 'diskb:log4:log')"
db-types="Oracle" />
<sql-case id="alter_database_add_logfile_with_size_m" value="ALTER
DATABASE ADD LOGFILE ('/oracle/dbs/log1c.rdo', '/oracle/dbs/log2c.rdo') SIZE
100M" db-types="Oracle" />
+ <sql-case id="alter_database_recover_automatic_until_time" value="ALTER
DATABASE RECOVER AUTOMATIC UNTIL TIME '2001-10-27:14:00:00'" db-types="Oracle"
/>
<sql-case id="alter_database_add_logfile_member_reuse_to_group"
value="ALTER DATABASE ADD LOGFILE MEMBER '/disk1/oradata/trgt/redo02b.log'
REUSE TO GROUP 2" db-types="Oracle" />
<sql-case id="alter_database_add_logfile_group" value="ALTER DATABASE ADD
LOGFILE GROUP 3 ('diska:log3.log', 'diskb:log3.log') SIZE 50K"
db-types="Oracle" />
<sql-case id="alter_database_drop_logfile_member" value="ALTER DATABASE
DROP LOGFILE MEMBER 'diskb:log3.log'" db-types="Oracle" />