この記事には、SQL ALTER DATABASE
が含まれています さまざまなデータベース管理システム(DBMS)によって実装される構文。構文は、各ベンダーがWebサイトにリストしているとおりに正確にリストされています。特定のベンダーの構文の詳細を表示するには、該当するリンクをクリックしてください。
対象となるDBMSは、MySQL、SQL Server、PostgreSQL、およびOracleデータベースです。
MySQL
MySQL 5.7リファレンスマニュアルから:
ALTER {DATABASE | SCHEMA} [db_name
]alter_specification
... ALTER {DATABASE | SCHEMA}db_name
UPGRADE DATA DIRECTORY NAMEalter_specification
: [DEFAULT] CHARACTER SET [=]charset_name
| [DEFAULT] COLLATE [=]collation_name
SQL Server
Transact-SQLリファレンスから:
ALTER DATABASE { database_name | CURRENT } { MODIFY NAME = new_database_name | COLLATE collation_name | <file_and_filegroup_options> | <set_database_options> } [;] <file_and_filegroup_options >::= <add_or_modify_files>::= <filespec>::= <add_or_modify_filegroups>::= <filegroup_updatability_option>::= <set_database_options>::= <optionspec>::= <auto_option> ::= <change_tracking_option> ::= <cursor_option> ::= <database_mirroring_option> ::= <date_correlation_optimization_option> ::= <db_encryption_option> ::= <db_state_option> ::= <db_update_option> ::= <db_user_access_option> ::= <external_access_option> ::= <FILESTREAM_options> ::= <HADR_options> ::= <parameterization_option> ::= <recovery_option> ::= <service_broker_option> ::= <snapshot_option> ::= <sql_option> ::= <termination> ::=
PostgreSQL
PostgreSQL 9.5マニュアルから:
ALTER DATABASE name [ [ WITH ] option [ ... ] ] where option can be: ALLOW_CONNECTIONS allowconn CONNECTION LIMIT connlimit IS_TEMPLATE istemplate ALTER DATABASE name RENAME TO new_name ALTER DATABASE name OWNER TO { new_owner | CURRENT_USER | SESSION_USER } ALTER DATABASE name SET TABLESPACE new_tablespace ALTER DATABASE name SET configuration_parameter { TO | = } { value | DEFAULT } ALTER DATABASE name SET configuration_parameter FROM CURRENT ALTER DATABASE name RESET configuration_parameter ALTER DATABASE name RESET ALL
Oracleデータベース
Oracle Database Online Documentation 12 cから リリース1(12.1):
ALTER DATABASE [ database ] { startup_clauses | recovery_clauses | database_file_clauses | logfile_clauses | controlfile_clauses | standby_database_clauses | default_settings_clauses | instance_clauses | security_clause } ;
以下に、さまざまな条項の詳細の概要を示します。
startup_clauses ::=
{ MOUNT [ { STANDBY | CLONE } DATABASE ] | OPEN { [ READ WRITE ] [ RESETLOGS | NORESETLOGS ] [ UPGRADE | DOWNGRADE ] | READ ONLY } }
restorey_clauses ::=
{ general_recovery | managed_standby_recovery | BEGIN BACKUP | END BACKUP }
general_recovery ::=
RECOVER [ AUTOMATIC ] [ FROM 'location' ] { { full_database_recovery | partial_database_recovery | LOGFILE 'filename' } [ { TEST | ALLOW integer CORRUPTION | parallel_clause }... ] | CONTINUE [ DEFAULT ] | CANCEL }
full_database_recovery ::=
[ STANDBY ] DATABASE [ { UNTIL { CANCEL | TIME date | CHANGE integer | CONSISTENT } | USING BACKUP CONTROLFILE | SNAPSHOT TIME date }... ]
partial_database_recovery ::=
{ TABLESPACE tablespace [, tablespace ]... | DATAFILE { 'filename' | filenumber } [, 'filename' | filenumber ]... }
parallel_clause ::=
{ NOPARALLEL | PARALLEL [ integer ] }
managed_standby_recovery ::=
RECOVER { MANAGED STANDBY DATABASE [ { USING ARCHIVED LOGFILE | DISCONNECT [FROM SESSION] | NODELAY | UNTIL CHANGE integer | UNTIL CONSISTENT | parallel_clause }... | FINISH | CANCEL ] | TO LOGICAL STANDBY { db_name | KEEP IDENTITY } }
database_file_clauses ::=
{ RENAME FILE 'filename' [, 'filename' ]... TO 'filename' | create_datafile_clause | alter_datafile_clause | alter_tempfile_clause | move_datafile_clause }
create_datafile_clause ::=
CREATE DATAFILE { 'filename' | filenumber } [, 'filename' | filenumber ]... } [ AS { file_specification [, file_specification ]... | NEW } ]
alter_datafile_clause ::=
DATAFILE { 'filename' | filenumber } [, 'filename' | filenumber ]... } { ONLINE | OFFLINE [ FOR DROP ] | RESIZE size_clause | autoextend_clause | END BACKUP }
alter_tempfile_clause ::=
TEMPFILE { 'filename' [, 'filename' ]... | filenumber [, filenumber ]... } { RESIZE size_clause | autoextend_clause | DROP [ INCLUDING DATAFILES ] | ONLINE | OFFLINE }
move_datafile_clause ::=
MOVE DATAFILE ( 'filename' | 'ASM_filename' | file_number ) [ TO ( 'filename' | 'ASM_filename' ) ] [ REUSE ] [ KEEP ]
ASM_filename ::=
{ fully_qualified_file_name | numeric_file_name | incomplete_file_name | alias_file_name }
autoextend_clause ::=
AUTOEXTEND { OFF | ON [ NEXT size_clause ] [ maxsize_clause ] }
maxsize_clause ::=
MAXSIZE { UNLIMITED | size_clause }
logfile_clauses ::=
{ { ARCHIVELOG [ MANUAL ] | NOARCHIVELOG } | [ NO ] FORCE LOGGING | RENAME FILE 'filename' [, 'filename' ]... TO 'filename' | CLEAR [ UNARCHIVED ] LOGFILE logfile_descriptor [, logfile_descriptor ]... [ UNRECOVERABLE DATAFILE ] | add_logfile_clauses | drop_logfile_clauses | switch_logfile_clause | supplemental_db_logging }
add_logfile_clauses ::=
ADD [ STANDBY ] LOGFILE { { [ INSTANCE 'instance_name' ] | [ THREAD 'integer' ] } [ GROUP integer ] redo_log_file_spec [, [ GROUP integer ] redo_log_file_spec ]... | MEMBER 'filename' [ REUSE ] [, 'filename' [ REUSE ] ]... TO logfile_descriptor [, logfile_descriptor ]... }
drop_logfile_clauses ::=
DROP [ STANDBY ] LOGFILE { logfile_descriptor [, logfile_descriptor ]... | MEMBER 'filename' [, 'filename' ]... }
switch_logfile_clause ::=
SWITCH ALL LOGFILES TO BLOCKSIZE integer
Supplemental_db_logging ::=
{ ADD | DROP } SUPPLEMENTAL LOG { DATA | supplemental_id_key_clause | supplemental_plsql_clause }
Supplemental_id_key_clause ::=
DATA ( { ALL | PRIMARY KEY | UNIQUE | FOREIGN KEY } [, { ALL | PRIMARY KEY | UNIQUE | FOREIGN KEY } ]... ) COLUMNS
Supplemental_plsql_clause ::=
DATA FOR PROCEDURAL REPLICATION
logfile_descriptor ::=
{ GROUP integer | ('filename' [, 'filename' ]...) | 'filename' }
controlfile_clauses ::=
CREATE { [ LOGICAL | PHYSICAL ] STANDBY | FAR SYNC INSTANCE } CONTROLFILE AS 'filename' [ REUSE ] | BACKUP CONTROLFILE TO { 'filename' [ REUSE ] | trace_file_clause }
standby_database_clauses ::=
{ { activate_standby_db_clause | maximize_standby_db_clause | register_logfile_clause | commit_switchover_clause | start_standby_clause | stop_standby_clause | convert_database_clause } [ parallel_clause ] } | { switchover_clause | failover_clause }
activate_standby_db_clause ::=
ACTIVATE [ PHYSICAL | LOGICAL ] STANDBY DATABASE [ FINISH APPLY ]
maximize_standby_db_clause ::=
SET STANDBY DATABASE TO MAXIMIZE { PROTECTION | AVAILABILITY | PERFORMANCE }
register_logfile_clause ::=
REGISTER [ OR REPLACE ] [ PHYSICAL | LOGICAL ] LOGFILE [ file_specification [, file_specification ]... [ FOR logminer_session_name ]
switchover_clause ::=
SWITCHOVER TO target_db_name [ VERIFY | FORCE ]
failover_clause ::=
FAILOVER TO target_db_name [ FORCE ]
commit_switchover_clause ::=
{ PREPARE | COMMIT } TO SWITCHOVER [ TO { { [ PHYSICAL | LOGICAL ] PRIMARY | [ PHYSICAL ] STANDBY } [ { WITH | WITHOUT } SESSION SHUTDOWN { WAIT | NOWAIT } ] | LOGICAL STANDBY } | CANCEL ]
start_standby_clause ::=
START LOGICAL STANDBY APPLY [ IMMEDIATE ] [ NODELAY ] [ NEW PRIMARY dblink | INITIAL [ scn_value ] | { SKIP FAILED TRANSACTION | FINISH } ]
stop_standby_clause ::=
{ STOP | ABORT } LOGICAL STANDBY APPLY
convert_database_clause ::=
CONVERT TO ( PHYSICAL | SNAPSHOT ) STANDBY
default_settings_clauses ::=
{ DEFAULT EDITION = edition_name | SET DEFAULT { BIGFILE | SMALLFILE } TABLESPACE | DEFAULT TABLESPACE tablespace | DEFAULT TEMPORARY TABLESPACE { tablespace | tablespace_group_name } | RENAME GLOBAL_NAME TO database.domain [.domain ]... | ENABLE BLOCK CHANGE TRACKING [ USING FILE 'filename' [ REUSE ] ] | DISABLE BLOCK CHANGE TRACKING | [NO] FORCE FULL DATABASE CACHING | flashback_mode_clause | set_time_zone_clause }
set_time_zone_clause ::=
SET TIME_ZONE = '{ { + | - } hh : mi | time_zone_region }'
flashback_mode_clause ::=
FLASHBACK { ON | OFF }
instance_clauses ::=
{ ENABLE | DISABLE } INSTANCE 'instance_name'
security_clause ::=
GUARD { ALL | STANDBY | NONE }
GUIの使用
ほとんどのDBMSでは、GUIを使用してデータベースを変更できます。これは、製品に付属しているGUIか、サードパーティによって開発されたGUIである可能性があります。たとえば、MySQL Workbenchは、MySQLで使用できるGUIツールです。