Este artículo contiene SQL ALTER DATABASE
sintaxis, implementada por varios sistemas de administración de bases de datos (DBMS). La sintaxis se enumera exactamente como cada proveedor la ha incluido en su sitio web. Haga clic en el enlace correspondiente para ver más detalles sobre la sintaxis de un proveedor en particular.
Los DBMS cubiertos son MySQL, SQL Server, PostgreSQL y Oracle Database.
MySQL
Del Manual de referencia de 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
Servidor SQL
De la Referencia de 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
Del Manual de 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
Base de datos de Oracle
De la documentación en línea de Oracle Database 12c Versión 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 } ;
A continuación, se describen los detalles de las diversas cláusulas.
cláusulas_de_inicio::=
{ MOUNT [ { STANDBY | CLONE } DATABASE ] | OPEN { [ READ WRITE ] [ RESETLOGS | NORESETLOGS ] [ UPGRADE | DOWNGRADE ] | READ ONLY } }
cláusulas_de_recuperación ::=
{ general_recovery | managed_standby_recovery | BEGIN BACKUP | END BACKUP }
recuperación_general ::=
RECOVER [ AUTOMATIC ] [ FROM 'location' ] { { full_database_recovery | partial_database_recovery | LOGFILE 'filename' } [ { TEST | ALLOW integer CORRUPTION | parallel_clause }... ] | CONTINUE [ DEFAULT ] | CANCEL }
recuperación_completa_de_la_base_de_datos ::=
[ STANDBY ] DATABASE [ { UNTIL { CANCEL | TIME date | CHANGE integer | CONSISTENT } | USING BACKUP CONTROLFILE | SNAPSHOT TIME date }... ]
recuperación_parcial_de_la_base_de_datos::=
{ TABLESPACE tablespace [, tablespace ]... | DATAFILE { 'filename' | filenumber } [, 'filename' | filenumber ]... }
cláusula_paralela::=
{ NOPARALLEL | PARALLEL [ integer ] }
recuperación_en espera_administrada::=
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 } }
cláusulas_de_archivo_de_base_de_datos ::=
{ 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 }
mover_cláusula_archivo_datos::=
MOVE DATAFILE ( 'filename' | 'ASM_filename' | file_number ) [ TO ( 'filename' | 'ASM_filename' ) ] [ REUSE ] [ KEEP ]
ASM_nombre_archivo::=
{ fully_qualified_file_name | numeric_file_name | incomplete_file_name | alias_file_name }
autoextend_cláusula ::=
AUTOEXTEND { OFF | ON [ NEXT size_clause ] [ maxsize_clause ] }
cláusula_tamañomáximo::=
MAXSIZE { UNLIMITED | size_clause }
cláusulas_de_archivo_de_registro ::=
{ { 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' ]... }
cláusula_cambiar_archivo_de_registro::=
SWITCH ALL LOGFILES TO BLOCKSIZE integer
registro_bd_suplementario ::=
{ 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
cláusula_plsql_suplementaria::=
DATA FOR PROCEDURAL REPLICATION
descriptor_archivo_de_registro::=
{ GROUP integer | ('filename' [, 'filename' ]...) | 'filename' }
cláusulas_archivo_control ::=
CREATE { [ LOGICAL | PHYSICAL ] STANDBY | FAR SYNC INSTANCE } CONTROLFILE AS 'filename' [ REUSE ] | BACKUP CONTROLFILE TO { 'filename' [ REUSE ] | trace_file_clause }
cláusulas_de_base_de_datos_en_espera ::=
{ { 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 }
activar_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 ]
cláusula_de_conmutación::=
SWITCHOVER TO target_db_name [ VERIFY | FORCE ]
cláusula de conmutación por error::=
FAILOVER TO target_db_name [ FORCE ]
cláusula_conmutación_commit::=
{ 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
cláusulas_de_configuración_predeterminada::=
{ 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 }
establecer_cláusula_de_zona_horaria::=
SET TIME_ZONE = '{ { + | - } hh : mi | time_zone_region }'
cláusula_modo_flashback ::=
FLASHBACK { ON | OFF }
cláusulas_de_instancia::=
{ ENABLE | DISABLE } INSTANCE 'instance_name'
clausula_seguridad ::=
GUARD { ALL | STANDBY | NONE }
Uso de la GUI
La mayoría de los DBMS le permiten modificar las bases de datos mediante la GUI. Esta podría ser una GUI suministrada con el producto o una desarrollada por un tercero. Por ejemplo, MySQL Workbench es una herramienta GUI que se puede usar con MySQL.