Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.
If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
This software is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. MySQL is a trademark of Oracle Corporation and/or its affiliates, and shall not be used without Oracle's express written authorization. Other names may be trademarks of their respective owners.
This software and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.
This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this material is subject to the terms and conditions of your Oracle Software License and Service Agreement, which has been executed and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle or as specifically provided below. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates.
This documentation is NOT distributed under a GPL license. Use of this documentation is subject to the following terms:
You may create a printed copy of this documentation solely for your own personal use. Conversion to other formats is allowed as long as the actual content is not altered or edited in any way. You shall not publish or distribute this documentation in any form or on any media, except if you distribute the documentation in a manner similar to how Oracle disseminates it (that is, electronically for download on a Web site with the software) or on a CD-ROM or similar medium, provided however that the documentation is disseminated together with the software on the same medium. Any other use, such as any dissemination of printed copies or use of this documentation, in whole or in part, in another publication, requires the prior written consent from an authorized representative of Oracle. Oracle and/or its affiliates reserve any and all rights to this documentation not expressly granted above.
For more information on the terms of this license, for details on how the MySQL documentation is built and produced, or if you are interested in doing a translation, please visit MySQL Contact & Questions.
For additional licensing information, including licenses for libraries used by MySQL products, see Preface and Notes.
If you want help with using MySQL, please visit either the MySQL Forums or MySQL Mailing Lists where you can discuss your issues with other MySQL users.
For additional documentation on MySQL products, including translations of the documentation into other languages, and downloadable versions in variety of formats, including HTML and PDF formats, see the MySQL Documentation Library.
Abstract
This is the MySQL™ Reference Manual. It documents MySQL
5.1 through 5.1.54, as well as MySQL
Cluster releases based on versions 6.1, 6.2, 6.3, 7.0, and 7.1
of NDBCLUSTER through
5.1.15-ndb-6.1.23, 5.1.51-ndb-6.2.19,
5.1.51-ndb-6.3.39, 5.1.51-ndb-7.0.20, and
5.1.51-ndb-7.1.9.
MySQL 5.1 features. This manual describes features that are not included in every edition of MySQL 5.1; such features may not be included in the edition of MySQL 5.1 licensed to you. If you have any questions about the features included in your edition of MySQL 5.1, refer to your MySQL 5.1 license agreement or contact your Oracle sales representative.
Document generated on: 2010-11-04 (revision: 23563)
Table of Contents
noinstall Zip ArchiveAUTO_INCREMENTGROUP BY ClausesALTER DATABASE SyntaxALTER EVENT SyntaxALTER LOGFILE GROUP SyntaxALTER FUNCTION SyntaxALTER PROCEDURE SyntaxALTER SERVER SyntaxALTER TABLE SyntaxALTER TABLESPACE SyntaxALTER VIEW SyntaxCREATE DATABASE SyntaxCREATE EVENT SyntaxCREATE FUNCTION SyntaxCREATE INDEX SyntaxCREATE LOGFILE GROUP SyntaxCREATE PROCEDURE and
CREATE FUNCTION SyntaxCREATE SERVER SyntaxCREATE TABLE SyntaxCREATE TABLESPACE SyntaxCREATE TRIGGER SyntaxCREATE VIEW SyntaxDROP DATABASE SyntaxDROP EVENT SyntaxDROP FUNCTION SyntaxDROP INDEX SyntaxDROP LOGFILE GROUP SyntaxDROP PROCEDURE and
DROP FUNCTION SyntaxDROP SERVER SyntaxDROP TABLE SyntaxDROP TABLESPACE SyntaxDROP TRIGGER SyntaxDROP VIEW SyntaxRENAME DATABASE SyntaxRENAME TABLE SyntaxMyISAM Storage EngineInnoDB Storage EngineInnoDB Contact InformationInnoDBInnoDB Startup Options and System VariablesInnoDB TablesInnoDB Data and Log
FilesInnoDB
DatabaseInnoDB Database to Another MachineInnoDB Transaction Model and LockingInnoDB Multi-VersioningInnoDB Table and Index StructuresInnoDB Disk I/O and File Space ManagementInnoDB Error HandlingInnoDB Performance Tuning and TroubleshootingInnoDB TablesIBMDB2I Storage EngineMERGE Storage EngineMEMORY Storage EngineEXAMPLE Storage EngineFEDERATED Storage EngineARCHIVE Storage EngineCSV Storage EngineBLACKHOLE Storage Enginendbinfo MySQL Cluster Information DatabaseINFORMATION_SCHEMA TablesINFORMATION_SCHEMA SCHEMATA TableINFORMATION_SCHEMA TABLES TableINFORMATION_SCHEMA COLUMNS TableINFORMATION_SCHEMA STATISTICS TableINFORMATION_SCHEMA USER_PRIVILEGES TableINFORMATION_SCHEMA SCHEMA_PRIVILEGES TableINFORMATION_SCHEMA TABLE_PRIVILEGES TableINFORMATION_SCHEMA COLUMN_PRIVILEGES TableINFORMATION_SCHEMA CHARACTER_SETS TableINFORMATION_SCHEMA COLLATIONS TableINFORMATION_SCHEMA
COLLATION_CHARACTER_SET_APPLICABILITY TableINFORMATION_SCHEMA TABLE_CONSTRAINTS TableINFORMATION_SCHEMA KEY_COLUMN_USAGE TableINFORMATION_SCHEMA ROUTINES TableINFORMATION_SCHEMA VIEWS TableINFORMATION_SCHEMA TRIGGERS TableINFORMATION_SCHEMA PLUGINS TableINFORMATION_SCHEMA ENGINES TableINFORMATION_SCHEMA PARTITIONS TableINFORMATION_SCHEMA EVENTS TableINFORMATION_SCHEMA FILES TableINFORMATION_SCHEMA PROCESSLIST TableINFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS TableINFORMATION_SCHEMA GLOBAL_STATUS and
SESSION_STATUS
TablesINFORMATION_SCHEMA GLOBAL_VARIABLES and
SESSION_VARIABLES
TablesINFORMATION_SCHEMA PROFILING TableINFORMATION_SCHEMA TablesSHOW StatementsCALL
Statementslibcurl) LicenseFindGTest.cmake Licensegetarg Licenselibedit Licenselibevent LicenseLPeg Library LicenseLuaFileSystem Library Licensezlib LicenseINFORMATION_SCHEMAINFORMATION_SCHEMA IndexJOIN Types IndexList of Figures
FEDERATED Table StructureList of Tables
configure)
Referencemysqld_safe Optionsmysql Optionsmysqladmin Optionsmysqlcheck Optionsmysqldump Optionsmysqlimport Optionsmysqlshow Optionsmysqlslap Optionsmyisamchk Optionsmysqlaccess Optionsmysqlbinlog Optionsmysqldumpslow Optionsmysqlhotcopy OptionsGRANT and
REVOKEuser and db Table Columnstables_priv and columns_priv Table
Columnsprocs_priv Table ColumnsGROUP BY)
FunctionsGRANT and
REVOKEMyISAM Storage Engine
FeaturesInnoDB Storage Engine
FeaturesInnoDB Option/Variable
ReferenceIBMDB2I Storage Engine
FeaturesIBMDB2I Isolation LevelsIBMDB2IIBMDB2I and MySQLIBMDB2IIBMDB2IMEMORY Storage Engine
FeaturesARCHIVE Storage Engine
FeaturesList of Examples
DriverManagerSELECT queryConnection.prepareCall()CallableStatement input
parametersAUTO_INCREMENT column values
using Statement.getGeneratedKeys()AUTO_INCREMENT column values
using SELECT LAST_INSERT_ID()AUTO_INCREMENT column values
in Updatable ResultSetsinsertdata.jspresponse.jspmysql_affected_rows
examplemysql_affected_rows
example using transactionsmysql_client_encoding
examplemysql_close
examplemysql_connect
examplemysql_connect
example using hostname:port syntaxmysql_connect
example using ":/path/to/socket" syntaxmysql_create_db
alternative examplemysql_data_seek
examplemysql_db_name
examplemysql_db_query
alternative examplemysql_drop_db
alternative examplemysql_errno
examplemysql_error
examplemysql_escape_string
examplemysql_fetch_array
with
MYSQL_NUMmysql_fetch_array
with
MYSQL_ASSOCmysql_fetch_array
with
MYSQL_BOTHmysql_fetch_assoc
examplemysql_fetch_field
examplemysql_fetch_lengths
examplemysql_fetch_object
examplemysql_fetch_object
examplemysql_fetch_rowmysql_field_flags
examplemysql_field_len
examplemysql_field_name
examplemysql_field_table
examplemysql_field_type
examplemysql_free_result
examplemysql_get_client_info
examplemysql_get_host_info
examplemysql_get_proto_info
examplemysql_get_server_info
examplemysql_insert_id
examplemysql_list_dbs
examplemysql_list_fieldsmysql_list_processes
examplemysql_list_tables
alternative examplemysql_num_fields
examplemysql_num_rows
examplemysql_ping
examplemysql_real_escape_string
examplemysql_result
examplemysql_select_db
examplemysql_stat
examplemysql_stat
examplemysql_tablename
examplemysql_thread_id
examplemysqli->affected_rows examplemysqli::autocommit examplemysqli::change_user examplemysqli::character_set_name examplemysqli::commit examplemysqli->connect_errno examplemysqli->connect_error examplemysqli::__construct examplemysqli->errno examplemysqli->error examplemysqli->field_count examplemysqli::get_charset examplemysqli_get_connection_stats examplemysqli->host_info examplemysqli->protocol_version examplemysqli->server_info examplemysqli->server_version examplemysqli->info examplemysqli->insert_id examplemysqli::kill examplemysqli::multi_query examplemysqli::ping examplemysqli_poll
examplemysqli::prepare examplemysqli::query examplemysqli::real_connect examplemysqli::real_escape_string examplemysqli::rollback examplemysqli::select_db examplemysqli::set_charset examplemysqli::set_local_infile_handler examplemysqli->sqlstate examplemysqli::stat examplemysqli->thread_id examplemysqli::use_result examplemysqli->warning_count examplemysqli_get_cache_stats examplemysqli_get_client_stats example