SQL is full of difficulties and traps for the unwary. You can avoid them if you understand relational theory, but only if you know how to put that theory into practice. In this book, Chris Date explains relational theory in depth, and demonstrates through numerous examples and exercises how you can apply it to your use of SQL. This third edition has been revised, extended, and improved throughout. Topics whose treatment has been expanded include data types and domains, table comparisons, image relations, aggregate operators and summarization, view updating, and subqueries. A special feature of this edition is a new appendix on NoSQL and relational theory. Could you write an SQL query to find employees who have worked at least once in every programming department in the company? And be sure it’s correct? Why is proper column naming so important? Nulls in the database cause wrong answers. Why? What you can do about it? How can image relations help you formulate complex SQL queries? SQL supports "quantified comparisons," but they’re better avoided. Why? And how? Database theory and practice have evolved considerably since Codd first defined the relational model, back in 1969. This book draws on decades of experience to present the most up to date treatment of the material available anywhere. Anyone with a modest to advanced background in SQL can benefit from the insights it contains. The book is product independent.
Views are virtual tables. That means they should be updatable, just as "real" or base tables are. In fact, view updatability isn’t just desirable, it’s crucial, for practical reasons as well as theoretical ones. But view updating has always been a controversial topic. Ever since the relational model first appeared, there has been widespread skepticism as to whether (in general) view updating is even possible. In stark contrast to this conventional wisdom, this book shows how views, just like base tables, can always be updated (so long as the updates don’t violate any integrity constraints). More generally, it shows how updating always ought to work, regardless of whether the target is a base table or a view. The proposed scheme is 100% consistent with the relational model, but rather different from the way updating works in SQL products today. This book can: Help database products improve in the future Help with a "roll your own" implementation, absent such product improvements Make you aware of the crucial role of predicates and constraints Show you how relational products are really supposed to behave Anyone with a professional interest in the relational model, relational technology, or database systems in general can benefit from this book.
All of today’s mainstream database products support the SQL language, and relational theory is what SQL is supposed to be based on. But are those products truly relational? Sadly, the answer is no. This book shows you what a real relational product would be like, and how and why it would be so much better than what’s currently available. With this unique book, you will: Learn how to see database systems as programming systems Get a careful, precise, and detailed definition of the relational model Explore a detailed analysis of SQL from a relational point of view There are literally hundreds of books on relational theory or the SQL language or both. But this one is different. First, nobody is more qualified than Chris Date to write such a book. He and Ted Codd, inventor of the relational model, were colleagues for many years, and Chris’s involvement with the technology goes back to the time of Codd’s first papers in 1969 and 1970. Second, most books try to use SQL as a vehicle for teaching relational theory, but this book deliberately takes the opposite approach. Its primary aim is to teach relational theory as such. Then it uses that theory as a vehicle for teaching SQL, showing in particular how that theory can help with the practical problem of using SQL correctly and productively. Any computer professional who wants to understand what relational systems are all about can benefit from this book. No prior knowledge of databases is assumed.
Gain a solid understanding of T-SQL—and write better queries Master the fundamentals of Transact-SQL—and develop your own code for querying and modifying data in Microsoft SQL Server 2012. Led by a SQL Server expert, you’ll learn the concepts behind T-SQL querying and programming, and then apply your knowledge with exercises in each chapter. Once you understand the logic behind T-SQL, you’ll quickly learn how to write effective code—whether you’re a programmer or database administrator. Discover how to: Work with programming practices unique to T-SQL Create database tables and define data integrity Query multiple tables using joins and subqueries Simplify code and improve maintainability with table expressions Implement insert, update, delete, and merge data modification strategies Tackle advanced techniques such as window functions, pivoting and grouping sets Control data consistency using isolation levels, and mitigate deadlocks and blocking Take T-SQL to the next level with programmable objects
Because databases often stay in production for decades, careful design is critical to making the database serve the needs of your users over years, and to avoid subtle errors or performance problems. In this book, C.J. Date, a leading exponent of relational databases, lays out the principles of good database design.
Einführungen in MySQL gibt es viele. Wer aber größere MySQL-Server betreut, die verlässlich laufen müssen, egal was Programmierer oder Benutzer auf sie loslassen, der braucht weiter reichende Informationen. In High Performance MySQL beschreiben sechs anerkannte Experten mit langjähriger Erfahrung auf großen Systemen alle Stellschrauben, an denen MySQL-Admins drehen können, um Sicherheit, Performance, Datenintegrität und Robustheit zu erhöhen. Von Profis für Profis Hier geht es nicht um kleine Webauftritte mit Datenbankanbindung! Lernen Sie stattdessen fortgeschrittene Techniken kennen, mit denen Sie MySQLs Potenzial voll ausreizen können -- um große, skalierbare Systeme zu entwerfen, zu optimieren und zu sichern. Behandelt werden Benchmarking, Indizes, Storage-Engines, Replikationen, Lastverteilung und Hochverfügbarkeit, Backups, Sicherheit... und zu jedem Aspekt die richtigen Werkzeuge, mit denen sich Ihre Ziele am besten realisieren lassen. Praxiserprobt muss es sein Der eine ist MySQL-Guru bei Yahoo!, der andere Angestellter Nr. 25 bei MySQL AB und dort nacheinander für das MySQL-Manual, die Trainingskurse und die Entwicklung des Supports zuständig, wieder ein anderer war bei MySQL AB im High-Performance-Team – die Autoren dieses Buchs wissen, wovon sie sprechen. Graue Theorie finden Sie woanders, hier geht es um bewährte Techniken aus der Praxis. Die erste Auflage von „High Performance MySQL“ wurde hoch gelobt und hat schon unzähligen Lesern wertvolle Dienste geleistet. Nun war es an der Zeit, dieses anerkannte Handbuch einmal komplett zu aktualisieren, um nützliches Referenzmaterial zu erweitern, neue Features der Versionen MySQL 5.0 und 5.1 zu ergänzen und zahlreiche Themen wie die Optimierung der Storage-Engine InnoDB zu vertiefen.
How can you bring out MySQL’s full power? With High Performance MySQL, you’ll learn advanced techniques for everything from designing schemas, indexes, and queries to tuning your MySQL server, operating system, and hardware to their fullest potential. This guide also teaches you safe and practical ways to scale applications through replication, load balancing, high availability, and failover. Updated to reflect recent advances in MySQL and InnoDB performance, features, and tools, this third edition not only offers specific examples of how MySQL works, it also teaches you why this system works as it does, with illustrative stories and case studies that demonstrate MySQL’s principles in action. With this book, you’ll learn how to think in MySQL. Learn the effects of new features in MySQL 5.5, including stored procedures, partitioned databases, triggers, and views Implement improvements in replication, high availability, and clustering Achieve high performance when running MySQL in the cloud Optimize advanced querying features, such as full-text searches Take advantage of modern multi-core CPUs and solid-state disks Explore backup and recovery strategies—including new tools for hot online backups
h2> Kommentare, Formatierung, Strukturierung Fehler-Handling und Unit-Tests Zahlreiche Fallstudien, Best Practices, Heuristiken und Code Smells Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen Code Aus dem Inhalt: Lernen Sie, guten Code von schlechtem zu unterscheiden Sauberen Code schreiben und schlechten Code in guten umwandeln Aussagekräftige Namen sowie gute Funktionen, Objekte und Klassen erstellen Code so formatieren, strukturieren und kommentieren, dass er bestmöglich lesbar ist Ein vollständiges Fehler-Handling implementieren, ohne die Logik des Codes zu verschleiern Unit-Tests schreiben und Ihren Code testgesteuert entwickeln Selbst schlechter Code kann funktionieren. Aber wenn der Code nicht sauber ist, kann er ein Entwicklungsunternehmen in die Knie zwingen. Jedes Jahr gehen unzählige Stunden und beträchtliche Ressourcen verloren, weil Code schlecht geschrieben ist. Aber das muss nicht sein. Mit Clean Code präsentiert Ihnen der bekannte Software-Experte Robert C. Martin ein revolutionäres Paradigma, mit dem er Ihnen aufzeigt, wie Sie guten Code schreiben und schlechten Code überarbeiten. Zusammen mit seinen Kollegen von Object Mentor destilliert er die besten Praktiken der agilen Entwicklung von sauberem Code zu einem einzigartigen Buch. So können Sie sich die Erfahrungswerte der Meister der Software-Entwicklung aneignen, die aus Ihnen einen besseren Programmierer machen werden – anhand konkreter Fallstudien, die im Buch detailliert durchgearbeitet werden. Sie werden in diesem Buch sehr viel Code lesen. Und Sie werden aufgefordert, darüber nachzudenken, was an diesem Code richtig und falsch ist. Noch wichtiger: Sie werden herausgefordert, Ihre professionellen Werte und Ihre Einstellung zu Ihrem Beruf zu überprüfen. Clean Code besteht aus drei Teilen:Der erste Teil beschreibt die Prinzipien, Patterns und Techniken, die zum Schreiben von sauberem Code benötigt werden. Der zweite Teil besteht aus mehreren, zunehmend komplexeren Fallstudien. An jeder Fallstudie wird aufgezeigt, wie Code gesäubert wird – wie eine mit Problemen behaftete Code-Basis in eine solide und effiziente Form umgewandelt wird. Der dritte Teil enthält den Ertrag und den Lohn der praktischen Arbeit: ein umfangreiches Kapitel mit Best Practices, Heuristiken und Code Smells, die bei der Erstellung der Fallstudien zusammengetragen wurden. Das Ergebnis ist eine Wissensbasis, die beschreibt, wie wir denken, wenn wir Code schreiben, lesen und säubern. Dieses Buch ist ein Muss für alle Entwickler, Software-Ingenieure, Projektmanager, Team-Leiter oder Systemanalytiker, die daran interessiert sind, besseren Code zu produzieren. Über den Autor: Robert C. »Uncle Bob« Martin entwickelt seit 1970 professionell Software. Seit 1990 arbeitet er international als Software-Berater. Er ist Gründer und Vorsitzender von Object Mentor, Inc., einem Team erfahrener Berater, die Kunden auf der ganzen Welt bei der Programmierung in und mit C++, Java, C#, Ruby, OO, Design Patterns, UML sowie Agilen Methoden und eXtreme Programming helfen.
Master the Underutilized Advanced Features of SQL and PL/SQL This hands-on guide from Oracle Press shows how to fully exploit lesser known but extremely useful SQL and PL/SQL features―and how to effectively use both languages together. Written by a team of Oracle ACE Directors, Real-World SQL and PL/SQL: Advice from the Experts features best practices, detailed examples, and insider tips that clearly demonstrate how to write, troubleshoot, and implement code for a wide variety of practical applications. The book thoroughly explains underutilized SQL and PL/SQL functions and lays out essential development strategies. Data modeling, advanced analytics, database security, secure coding, and administration are covered in complete detail. Learn how to: • Apply advanced SQL and PL/SQL tools and techniques • Understand SQL and PL/SQL functionality and determine when to use which language • Develop accurate data models and implement business logic • Run PL/SQL in SQL and integrate complex datasets • Handle PL/SQL instrumenting and profiling • Use Oracle Advanced Analytics and Oracle R Enterprise • Build and execute predictive queries • Secure your data using encryption, hashing, redaction, and masking • Defend against SQL injection and other code-based attacks • Work with Oracle Virtual Private Database Code examples in the book are available for download at www.MHProfessional.com. TAG: For a complete list of Oracle Press titles, visit www.OraclePressBooks.com
A note from the authors: Dear Reader: "Database is boring." That sentiment is heard all too widely these days. But it's so wrong! The database field is full of important problems still to be solved and interesting issues still to be examined - and some of those problems and issues are explored in this book. Between us, we have nearly 80 years experience in this field, and we're still actively researching, exploring, and learning, as well as helping others do the same. The present book is the latest in a series devoted to these goals; using "The Third Manifesto" (a detailed proposal for the future of database technology) as a foundation, it reports on some of our most recent investigations in this field. Among many other things, it includes the most recent version of "The Third Manifesto" itself; specifications for a conforming language called Tutorial D; and a detailed proposal for a model of type inheritance. Other significant features include: - Extending the foreign key concept - Simplifying queries using image relations - Closer looks at logic and relational algebra - Suggested approaches to "missing information" - Responses to certain "Manifesto" criticisms - Clarifying aspects of normalization The tone of the book overall is naturally somewhat serious, but there are moments of light relief as well. We hope you enjoy it. C.J. Date and Hugh Darwen
Daten und Datenbanken sind quasi überall. Mit der Standardabfragesprache SQL können Daten in relationalen Datenbanken einfach, strukturiert und zielsicher abgefragt werden. Erfahren Sie in diesem Buch, welches kein Vorwissen voraussetzt, wie man Datenbanken erstellt, wie man Daten ordnet und abfragt und wie man SQL-Anweisungen in Programme und Websites einbindet. Nutzen Sie dieses Buch auch als Nachschlagewerk. Ganz wichtig: Sie lernen auch, wie Sie Ihre Datenbanken und Daten schützen und wie Sie typische Fehler vermeiden.
Even if you have little or no knowledge of T-SQL, Beginning T-SQL 2008 will bring you up to intermediate level and teach you best practices along the way. You'll learn how to write code that will help you to achieve the best-performing applications possible. You'll find an introduction to databases, normalization, and SQL Server Management Studio. You'll understand how data is stored in a database and learn how to use at least one of the available tools to get to that data. Each subsequent chapter teaches an aspect of T-SQL, building on the skills learned in previous chapters. Exercises are included in each chapter because the only way to learn T-SQL is to write some code. This book will do more than just give the syntax and examples. It will teach you techniques to help you avoid common errors and create robust and well-performing code. Imparts best practices for writing T-SQL Helps readers avoid common errors Shows how to write scalable code that yields good performance What you’ll learn Understand the fundamentals of relational theory, upon which Transact-SQL is based Write accurate queries that are scalable and perform well Combine set-based and procedural processing, obtaining the best from both worlds Embed business logic in your database through stored procedures and functions Simplify your work through new and advanced features such as common-table expressions and virtual tables Enhance performance by knowing when to apply features such table value parameters Who this book is for This book is for developers who will be writing database applications against SQL Server databases. Table of Contents Getting Started Writing Simple SELECT Queries Using Functions and Expressions Querying Multiple Tables Grouping and Summarizing Data Manipulating Data Understanding T-SQL Programming Logic Moving Logic to the Database Working with New Data Types Writing Advanced Queries Where to Go Next?

Best Books