database servers and other technologies from MySQL AB.Covering both the basic MySQL Core Certification exam and the advanced MySQL Professional Certification exam, MySQL Certification St
Trang 1database servers and other technologies from MySQL AB.
Covering both the basic MySQL Core
Certification exam and the advanced MySQL
Professional Certification exam, MySQL
Certification Study Guide is the one authority
Trang 2to look to when you're preparing for either test The book teaches you all the concepts, principles, and techniques that you'll need to know for the Core and Professional
certification exams, and it includes an array
world examples to help you prepare for test day.
Trang 8Copyright © 2004 by MySQL AB
All rights reserved No part of this book shall be reproduced,stored in a retrieval system, or transmitted by any means,
electronic, mechanical, photocopying, recording, or otherwise,without written permission from the publisher No patent
liability is assumed with respect to the use of the informationcontained herein Although every precaution has been taken inthe preparation of this book, the publisher and author assume
no responsibility for errors or omissions Nor is any liabilityassumed for damages resulting from the use of the informationcontained herein
Trang 9as accurate as possible, but no warranty or fitness is implied.The information provided is on an "as is" basis The author(s)and the publisher shall have neither liability nor responsibility toany person or entity with respect to any loss or damages arisingfrom the information contained in this book
Any errata for this book are published at
http://www.mysql.com/certification/studyguides
Bulk Sales
Sams Publishing offers excellent discounts on this book whenordered in quantity for bulk purchases or special sales For
Trang 11MySQL® Press is the exclusive publisher of technology books
and materials that have been authorized by MySQL AB MySQLPress books are written and reviewed by the world's leadingauthorities on MySQL technologies, and are edited, produced,and distributed by the Que/Sams Publishing group of PearsonEducation, the worldwide leader in integrated education andcomputer technology publishing For more information on
Trang 12www.mysql.com or the following areas of the MySQL Web site:Training information: www.mysql.com/training
Support services: www.mysql.com/support
Consulting services: www.mysql.com/consulting
Trang 13Paul DuBois is a member of the MySQL documentation team,
a database administrator, and a leader in the Open Source andMySQL communities He contributed to the online
"MySQL FAQ and Tools" Internet site
Trang 14We would like to thank all of our colleagues at MySQL who havehelped build the certification program over the past 18 months,and without whom this book wouldn't have come into existence
A special thank you to Kaj Arnö, who was the person to
conceive and initiate the MySQL Certification program
Trang 15The MySQL Reference Manual is the primary source of
information on MySQL It is available online in several formatsand languages from the MySQL AB Web site
(http://www.mysql.com/) It is also available as a printed
bound volume from MySQL Press in English and from MITP inGerman
Trang 16As the reader of this book, you are our most important critic
and commentator We value your opinion and want to know
what we're doing right, what we could do better, what areasyou'd like to see us publish in, and any other words of wisdomyou're willing to pass our way
You can email or write me directly to let me know what you did
or didn't like about this bookas well as what we can do to makeour books stronger
Please note that I cannot help you with technical problems
related to the topic of this book, and that due to the high
volume of mail I receive, I might not be able to reply to every message.
When you write, please be sure to include this book's title andauthor as well as your name and phone or email address I willcarefully review your comments and share them with the authorand editors who worked on the book
Associate Publisher Sams Publishing
800 East 96th Street Indianapolis, IN 46240 USA
Trang 17For more information about this book or others from Sams
Publishing, visit our Web site at www.samspublishing.com Typethe ISBN (excluding hyphens) or the title of the book in theSearch box to find the book you're looking for
Trang 18Foreword
About This Book
Conventions Used in This BookOther Related Documents
About the Exams
Interpreting DESCRIBE OutputSample Tables
Summary
Trang 19Although the MySQL™ Relational Database Management
System (RDBMS) has existed for many years, it's only withinthe last two years that MySQL has gained official recognition inmany enterprise settings The growth has been tremendousinjust a few years, the number of MySQL installations worldwidehas risen from a few hundred thousand to an estimated fourmillion in early 2003
The growth of MySQL in the enterprise, paired with downturn inthe economy at the turn of the century, has created a new
phenomenon: There are more companies than ever looking
specifically for people with MySQL skills At the same time,
many people with MySQL knowledge are out looking for a jobafter the burst of the dot-com bubble, which means that
companies interested in hiring can pick and choose at will
MySQL AB, the company behind the MySQL RDBMS (yes, eventhough the MySQL RDBMS is an open source product, there's athriving company behind it) developed the MySQL CertificationProgram to help companies identify individuals with the skillsetthey need and expect from their employees The certificationprogram also helps individuals by setting them apart from
hobbyists, increasing their prospects for finding challenging newtasks
MySQL AB currently offers certification at two levels:
The Core Certification tests basic MySQL knowledge andusage, knowledge that's sufficient to maintain a basic
MySQL installation and to create application programs thatuse MySQL as a backend database
The Professional Certification goes into more detail
Trang 20This book meets the demand that was created by the
introduction of the MySQL Certification Program How do youprepare for the exams? Reading this study guide is the best way
to enhance your chances of passing the demanding MySQL Coreand Professional exams
Although the topics covered by each exam (as listed in the
"MySQL Certification Candidate Guide") might seem basic, theexams aren't easy, and they require a combination of study andpractical experience This book will help you understand many
of these topics in-depth Combined with real-world experience,this will help you pass the exams
Another means of gaining skills and knowledge to both help youpass the exams and be successful in the field of MySQL
Frisvold, Peter Gulutzan, Mike Hillyer, Arjen Lentz, Max Mether,Heikki Tuuri, Nils Valentin, and Peter Zaitsev
I am happy the book is now out MySQL AB now has an
excellent answer to the most frequent question we get aboutcertification, namely, "How do I best prepare for it?"
Trang 21Kaj Arnö, MySQL AB, Vice President, Professional Services
Trang 22This is a study guide for the MySQL Core and Professional
Certification exams It contains both the "Core Study Guide"and the "Professional Study Guide." It should be seen as a
You might find that the wording of a topic covered in this guidecorresponds exactly to the wording of a question on an exam.However, that is the exception, so rote memorization of the
Some features in MySQL are version specific The current examand this book cover MySQL 4, and you should consider a
release date of such a gamma version
Trang 23happens on the day of the exam, and what happens once youhave passed the exam
The remainder of this study guide covers each section of theexams, as defined in the "MySQL Certification Candidate
Note that the exercises are not always in the same format asthe exam questions The exam questions are in a format that is
suited for testing your knowledge The exercises are designed
to help you get a better understanding of the contents of this
book, and to help you prove to yourself that you really graspthe topics covered
Trang 24be entered exactly as shown Thus, in an example such as thefollowing, you would substitute the name of some particulartable for table_name:
SELECT * FROM table_name;
In syntax descriptions, square brackets indicate optional
information For example, the following syntax for the SHOWTABLES statement indicates that you can invoke the statementwith or without a FROM clause that specifies a database name:
Trang 25In most cases, SQL statements are shown with a trailing
semicolon character (;) The semicolon indicates where the
statement examples However, the semicolon is not part of thestatement itself
mysql> SELECT VERSION();
+ -+
| VERSION() |
+ -+
Trang 26+ -+
Some commands are intended to be invoked from the commandline, such as from a Unix shell prompt or from a Windows
console window prompt In this guide, these commands areshown preceded by a shell> prompt Some Windows-specificexamples use a prompt that begins with C: The prompt youwill actually see on your own system depends on your
command interpreter and the prompt settings you use (Theprompt is likely to be % or $ for a Unix shell and C:\> for a
Windows console.)
SQL keywords such as SELECT or ORDER BY aren't case sensitive
in MySQL and may be specified in any lettercase when you
issue queries However, for this guide, keywords are written inuppercase letters to help make it clear when they're being used
data The latter term includes UPDATE statements, but also
other statements such as INSERT, REPLACE, and DELETE
Example commands generally omit options for specifying
connection parameters, such as host or user to specify theserver host or your MySQL username It's assumed that you'llsupply such options as necessary The "Core Study Guide"
discusses connection parameter options
Trang 27comprehensive information on the certifications offered,
upcoming certifications and betas, training offers, and so forth.After you've taken a certification exam, the Web site is also
where you will be able to check the status of your certification
The MySQL Certification Candidate Guide
The "MySQL Certification Candidate Guide" contains the overalldescription of the MySQL Certification program, as well as allthe practical information you will need in order to write an
exam The current version of the "Candidate Guide" as of studyguide publication time is included in an appendix However, the
"Candidate Guide" is subject to revision and certain details
might have changed by the time this book reaches you Youshould make sure that you've read the most current version ofthe "Candidate Guide" before going to an exam The latest
Trang 28One item found at the end of the "Candidate Guide" that youshould note particularly is the "Non-Disclosure and Logo UsageAgreement" (NDA/LUA) You'll be asked to agree to the
agreement when you go to take the exam At that point, legalagreements will probably be the last thing on your mind, so
reading the agreement before you go will save you some
distraction and also some exam time
The NDA/LUA consists of two main parts The "Non-DisclosureAgreement" defines the information you may pass on to othersabout the exams you have attended (actually, it's mostly about
what you're not allowed to tell) The "Logo Usage Agreement"
defines how you may use the MySQL certification logos afteryou've passed an exam and attained a MySQL Certification title
The Certification Mailing List
As an alternative to frequently checking the Web site for newdevelopments in MySQL certification, you can subscribe to thecertification announcement mailing list This is a low-volume list
to which MySQL AB posts news related to the certification
program The subscription address for the mailing list is
certification-subscribe@lists.mysql.com To subscribe, send anempty message to that address
Trang 29To take a MySQL certification exam, you must go to a VUE testcenter MySQL AB creates the exams and defines the content,the passing score, and so forth VUE is responsible for
delivering the exams to candidates worldwide
Registering for an Exam
There are three ways to register for an exam:
You can use the VUE Web site, http://www.vue.com/mysql.Note that you must preregister on the Web site to set up anaccount with VUE VUE processes your application and
notifies you when your account is ready This process
usually takes about 24 hours After your account has beenset up, you can register for the exam you want to take
be accommodated at the time you want to take the exam
MySQL AB recommends that you use the VUE Web site for
exam registration and payment, but you're welcome to use any
Trang 30If you register through the Web or a call center, a receipt will besent to you as soon as the registration process is completed Ifyou register directly at the test center, please ask for your
receipt when you submit payment
Going to the Exam
On the day of your exam, you should ensure that you arrive atthe test center well ahead of the appointed time (at least 15minutes early is recommended) As you register, test centerpersonnel will provide information on how much time you canexpect to spend to complete all steps necessary for testing
The Certification Non-Disclosure and Logo Usage Agreement as
it will be presented at the testing station
[View full size image]
Trang 31Each MySQL Certification Exam lasts 1 ½ hours In that time,you must answer 70 questions
The questions and answers in any particular exam are drawnfrom a large question pool Each section of the exam will have adifferent number of questions, proportional to the percentagesshown in the "MySQL Certification Candidate Guide."
This study guide organizes topic material into the sections
shown in the "Candidate Guide," but you shouldn't expect theexam to follow the same format While you're taking the exam,questions may occur in any order For example, on the CoreCertification Exam, you might be presented with a question on adata import operation, followed by a question pertaining to theData Definition Language
Learning to Read Questions
Trang 32question is first to understand what the question is asking The
questions are written in very concise language and are
thoroughly checked for readability But you also need to knowhow to interpret any additional information presented with thequestion
One type of information that's often provided is a display of thestructure of a table Instructions for interpreting this
information are given later in this introduction (see the section
"Interpreting DESCRIBE Output")
Answering Questions
You should attempt to answer all exam questions, because anunanswered question counts as an incorrect answer When
taking the exam, you'll be able to move back and forth betweenquestions This makes it possible to initially skip questions
you're unsure of and return to them as time permits You'll also
be able to mark a question "for review," if you want to spendmore time on it later When you've gone through all questions,
a review screen will be presented that contains any questionsthat you've marked for review, as well as all unanswered
Trang 33or by pressing the corresponding letter on the keyboard
For a multiple-choice/single-answer question, only one response
is correct and you must identify the correct answer from amongthe possible responses Some of the responses provided might
be partially correct, but only one will be completely correct In asingle-answer question, the fields that you can select are circles("radio buttons") and the text in the status bar below the
question says "select the best possible answer."
For a multiple-choice/multiple-answer question, you must
choose all correct answers to get credit for your response As
with single-answer questions, there might be subtle differencesbetween correct and incorrect answers; take your time to readeach possible answer carefully before deciding whether it is
correct In multiple-answer questions, the fields that you canselect are square ("check boxes") and the status line says
"Select between 1 and n answers," where n is the total number
of possible answers
For a question requiring a textual answer, you must respond byfilling in a text box with one or more words in the text box
provided You must spell each word correctly However, you
need not worry about lettercase or spacing Uppercase and
lowercase are considered the same, and multiple whitespacecharacters are considered to be equivalent to a single spacecharacter
A multiple-choice/single-answer question Note that each
answer key has a circle ("radio button") beside it, and the
status bar says "select the best response."
[View full size image]
Trang 34[View full size image]
Trang 35[View full size image]
Trang 36possible answers; however, you should always follow the
onscreen instructions If the instructions tell you to use onlyone word, use only one word Otherwise, you're certain to
receive no credit for your response
After the Exam
Unless you're taking part in a Beta exam, you'll receive yourgrade as soon as you complete the exam The test center willprovide you with a score report
If you pass, MySQL AB will mail your certificate shortly afterreceiving your exam results from the test center
If you get a failing grade on the exam, you have the option ofretaking it Although MySQL AB does not place restrictions onhow soon you can retake an exam, doing so is not advised untilyou've done some further study
Whether you pass or fail, after you've taken any MySQL
certification exam, you'll receive a letter from MySQL AB tellingyou how to gain access to extra information at
http://www.mysql.com Two main entry points into this area are
The candidate area:
http://www.mysql.com/certification/candidate
Here, you will find information specially set aside for MySQLcertification candidates For example, there might be specialoffers, information on prereleases of new certifications, and
so on
The results area:
http://www.mysql.com/certification/results
Trang 37Warning
For every popular certification exam, there are always
enterprising individuals who set up so-called "braindump"
Internet sites, where people anonymously post questions andanswers purported to be from the exam Please note these
cautions about using or contributing to these sites:
If you use such a site, you might be misled The answers
they provide are often wrong Most of the questions have
never been in an exam; they exist only in the submitter'shead As a result, instead of being helpful, such sites lead toconfusion
If you contribute to such a site by posting your own examquestions and answers, you risk forfeiting not only the
certification for the exam about which you have posted
details, but your involvement in the entire MySQL
Certification program You might thus never be able to
regain MySQL certification credentials
Trang 38the mysql program For example, assume that a question
requires you to know about a table named City The table's
Trang 39The Type value shows the column datatype
The Null indicator is the word YES if the column can contain
Trang 40If the Key value is the keyword MUL, this indicates thatthe column is the first column of a nonunique index or aunique-valued index that can contain NULL values
It's possible that more than one of the Key values may
apply to a given column of a table For example, a columnthat is a PRIMARY KEY might also be part of other indexes.When it's possible for more than one of the Key values todescribe an index, DESCRIBE displays the one with the
highest priority, in the order PRI, UNI, MUL
Because a column can be part of several indexes, the Key
values do not necessarily provide an exhaustive description
of a table's indexes However, for purposes of the exam,you should assume that the table descriptions given provideall the information needed to correctly answer the question
Default shows the column's default value This is the valuethat MySQL assigns to the column when a statement thatcreates a new record does not provide an explicit value forthe column (For example, this can happen with the INSERT,
REPLACE, and LOAD DATA INFILE statements.)
The Extra value displays other details about the column.The only Extra detail about which you need be concernedfor the exam is the value auto_increment This value
indicates that the column has the AUTO_INCREMENT
attribute (The ID column shown in the example is such aninstance.)
You can read more about indexing, column datatypes, default