|
The Most Complete and Practical Guide to MySQL Version 5’s Powerful SQL Dialect MySQL version 5 offers a SQL dialect with immense power. In SQL for MySQL Developers, Rick F. van der Lans helps you master this version ofSQL and take advantage of its full potential. Using case study examplesand hands-on exercises, van der Lans illuminates every key concept,technique, and statement–including advanced features that make iteasier to create even the most complex statements and programs. Drawing on decades of experience as an SQL standards team member and enterprise consultant, he reveals exactly why MySQL’s dialect works as it does–and how to get the most out of it. You’ll gain powerful insight into everything from basic queries to stored procedures, transactions to data security. Whether you’re a programmer, Web developer, analyst, DBA, or database user, this book can take you from “apprentice” to true SQL expert. If you’ve used SQL in older versions of MySQL, you’ll become dramatically more effective–and if you’re migrating from other database platforms, you’ll gain practical mastery fast. Coverage includes -
Writing queries, including joins, functions, and subqueries -
Updating data -
Creating tables, views, and other database objects -
Specifying keys and other integrity constraints -
Improving efficiency with indexes -
Enforcing security via passwords and privileges -
Embedding SQL statements within PHP programs -
Building stored procedures and triggers -
Using transactions, locking, rollback, and isolation levels -
Utilizing MySQL’s catalog All of the book’s sample programs are available for download from www.r20.nl. About the Author Rick F. van der Lans is author of the classic Introduction to SQL, the definitive SQL guide that database developers have relied on for more than 20 years. He is a consultant, author, and lecturer specializing in database technology, development tools, data warehousing, and XML. As managing director of the Netherlands-based R20/Consultancy, he has advised many large companies on defining their IT architectures. He chairs the European Meta Data Conference, and writes columns for several magazines. Contents About the Author xix Preface xx PART I Introduction 1 CHAPTER 1 Introduction to MySQL 3 CHAPTER 2 The Tennis Club Sample Database 29 CHAPTER 3 Installing the Software 37 CHAPTER 4 SQL in a Nutshell 41 PART II Querying and Updating Data 71 CHAPTER 5 SELECT Statement: Common Elements 73 CHAPTER 6 SELECT Statements, Table Expressions, and Subqueries 145 CHAPTER 7 SELECT Statement:The FROM Clause 171 CHAPTER 8 SELECT Statement: The WHERE Clause 213 CHAPTER 9 SELECT Statement: SELECT Clause and Aggregation Functions 315 CHAPTER 10 SELECT Statement: The GROUP BY Clause 349 CHAPTER 11 SELECT Statement: The HAVING Clause 375 CHAPTER 12 SELECT Statement: The ORDER BY Clause 383 CHAPTER 13 SELECT Statement: The LIMIT Clause 395 CHAPTER 14 Combining Table Expressions 409 CHAPTER 15 The User Variable and the SET Statement 421 CHAPTER 16 The HANDLER Statement 429 CHAPTER 17 Updating Tables 437 CHAPTER 18 Loading and Unloading Data 461 CHAPTER 19 Working with XML Documents 471 PART III Creating Database Objects 491 CHAPTER 20 Creating Tables 493 CHAPTER 21 Specifying Integrity Constraints 539 CHAPTER 22 Character Sets and Collations 561 CHAPTER 23 The ENUM and SET Types 577 CHAPTER 24 Changing and Dropping Tables 591 CHAPTER 25 Using Indexes 603 CHAPTER 26 Views 631 CHAPTER 27 Creating Databases 653 CHAPTER 28 Users and Data Security 659 CHAPTER 29 Statements for Table Maintenance 683 CHAPTER 30 The SHOW, DESCRIBE, and HELP Statements 693 PART IV Procedural Database Objects 701 CHAPTER 31 Stored Procedures 703 CHAPTER 32 Stored Functions 745 CHAPTER 33 Triggers 755 CHAPTER 34 Events 767 PART V Programming with SQL 783 CHAPTER 35 MySQL and PHP 785 CHAPTER 36 Dynamic SQL with Prepared Statement 807 CHAPTER 37 Transactions and Multiuser Usage 815 APPENDIX A Syntax of SQL 839 APPENDIX B Scalar Functions 903 APPENDIX C System Variables 953 APPENDIX D Bibliography 963 Index 967 |