chakkk309 commented on code in PR #19537: URL: https://github.com/apache/shardingsphere/pull/19537#discussion_r931776517
########## shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DDLStatement.g4: ########## @@ -3214,3 +3214,193 @@ forRefreshClause : FOR ((SYNCHRONOUS REFRESH USING stagingLogName) | (FAST REFRESH)) ; +alterPluggableDatabase + : ALTER databaseClause (pdbUnplugClause + | pdbSettingsClauses + | pdbDatafileClause + | pdbRecoveryClauses + | pdbChangeState + | pdbChangeStateFromRoot + | applicationClauses + | snapshotClauses + | prepareClause + | dropMirrorCopy + | lostWriteProtection) + ; + +databaseClause + : DATABASE dbName? + | PLUGGABLE DATABASE pdbName? + ; + +pdbUnplugClause + : pdbName UNPLUG INTO fileName pdbUnplugEncrypt? + ; + +pdbUnplugEncrypt + : ENCRYPT USING transportSecret + ; + +pdbSettingsClauses + : pdbName? pdbSettingCluase + | CONTAINERS containersClause + ; + +pdbSettingCluase + : DEFAULT EDITION EQ_ editionName + | SET DEFAULT (BIGFILE | SMALLFILE) TABLESPACE + | DEFAULT TABLESPACE tablespaceName + | DEFAULT TEMPORARY TABLESPACE (tablespaceName | tablespaceGroupName) + | RENAME GLOBAL_NAME TO databaseName (DOT_ domain)+ + | setTimeZoneClause + | databaseFileClauses + | supplementalDbLogging + | pdbStorageClause + | pdbLoggingClauses + | pdbRefreshModeClause + | REFRESH pdbRefreshSwitchoverClause? + | SET CONTAINER_MAP EQ_ mapObject + ; + +containersClause + : DEFAULT TARGET EQ_ ((LP_ containerName RP_) | NONE) + | HOST EQ_ hostName + | PORT EQ_ NUMBER_ + ; + +pdbStorageClause + : STORAGE ((LP_ storageMaxSizeClauses+ RP_) | UNLIMITED) + ; + +storageMaxSizeClauses + : (MAXSIZE | MAX_AUDIT_SIZE | MAX_DIAG_SIZE) (UNLIMITED | sizeClause) + ; + +pdbLoggingClauses + : loggingClause | pdbForceLoggingClause + ; + +pdbForceLoggingClause + : (ENABLE | DISABLE) FORCE (LOGGING | NOLOGGING) + | SET STANDBY NOLOGGING FOR ((DATA AVAILABILITY) | (LOAD PERFORMANCE)) + ; + +pdbRefreshModeClause + : REFRESH MODE (MANUAL | (EVERY refreshInterval (MINUTES | HOURS)) | NONE ) + ; + +pdbRefreshSwitchoverClause + : FROM sourcePdbName AT_ dbLink SWITCHOVER + ; + +pdbDatafileClause + : pdbName? DATAFILE (fileNameAndNumber | ALL) (ONLINE | OFFLINE) + ; + +fileNameAndNumber + : (fileName | fileNumber) (COMMA_ (fileName | fileNumber))* + ; + +pdbRecoveryClauses + : pdbName? (pdbGeneralRecovery + | BEGIN BACKUP + | END BACKUP + | ENABLE RECOVERY + | DISABLE RECOVERY) + ; + +pdbGeneralRecovery + : RECOVER AUTOMATIC? (FROM locationName)? (DATABASE + | TABLESPACE tablespaceName (COMMA_ tablespaceName)* + | DATAFILE fileNameAndNumber + | LOGFILE fileName + | CONTINUE DEFAULT?)? + ; + +pdbChangeState + : pdbName? (pdbOpen | pdbClose | pdbSaveOrDiscardState) + ; + +pdbOpen + : OPEN (((READ WRITE) | (READ ONLY))? RESTRICTED? FORCE? + | (READ WRITE)? UPGRADE RESTRICTED? + | RESETLOGS) instancesClause? + ; + +instancesClause + : INSTANCES EQ_ (instanceNameClause | (ALL (EXCEPT instanceName)?)) + ; + +instanceNameClause + : LP_ instanceName (COMMA_ instanceName )* RP_ + ; + +pdbClose + : CLOSE ((IMMEDIATE? (instancesClause | relocateClause)?) | (ABORT? instancesClause?)) + ; + +relocateClause + : RELOCATE (TO instanceName)? + | NORELOCATE + ; + +pdbSaveOrDiscardState + : (SAVE | DISCARD) STATE instancesClause? + ; + +pdbChangeStateFromRoot + : (pdbNameClause | (ALL (EXCEPT pdbNameClause)?)) (pdbOpen | pdbClose | pdbSaveOrDiscardState) + ; + +pdbNameClause + : pdbName (COMMA_ pdbName)* + ; + +applicationClauses + : APPLICATION ((appName appClause) | (ALL SYNC)) + ; + +appClause + : BEGIN INSTALL SQ_ appVersion SQ_ (COMMENT SQ_ commentValue SQ_)? + | END INSTALL (SQ_ appVersion SQ_)? + | BEGIN PATCH NUMBER_ (MINIMUM VERSION SQ_ appVersion SQ_)? (COMMENT SQ_ commentValue SQ_)? + | END PATCH NUMBER_? + | BEGIN UPGRADE (SQ_ startAppVersion SQ_)? TO SQ_ endAppVersion SQ_ (COMMENT SQ_ commentValue SQ_)? + | END UPGRADE (TO SQ_ endAppVersion SQ_)? + | BEGIN UNINSTALL + | END UNINSTALL + | SET PATCH NUMBER_ + | SET VERSION SQ_ appVersion SQ_ + | SET COMPATIBILITY VERSION ((SQ_ appVersion SQ_) | CURRENT) + | SYNC TO ((SQ_ appVersion SQ_) | (PATCH patchNumber)) + | SYNC + ; + +snapshotClauses + : pdbSnapshotClause + | materializeClause + | createSnapshotClause + | dropSnapshotClause + | setMaxPdbSnapshotsClause + ; + +pdbSnapshotClause + : ENABLE SNAPSHOT (MANUAL | (EVERY snapshotInterval (HOURS | MINUTES)) | NONE) Review Comment: According to the SQL execution result, we should remove the `ENABLE` keyword. <img width="389" alt="5e87aeebbc0b2261b26d42b17526f85" src="https://user-images.githubusercontent.com/60494790/181415381-cbfdd454-0a08-4ad3-891b-1a60c6e84808.png"> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@shardingsphere.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org