About this product: Through clear language, step-by-step discussions, and quizzes at the end of each chapter, the author makes databases easy. Quickly learn the core skills needed to design, configure, manage, and manipulate databases, whether at work or at home. Topics such as exploring different database models, planning their design, minimizing redundant data, designing tables, applying database design concepts, and implementing database security are covered. This is that fast, easy-to-understand tutorial that you’ve been looking for.
About this product: Programmers and software architects don't really make a conscious decision to design an application (particularly one with online exposure) around the three-tier model-view-controller design pattern anymore. Three-tier, largely because of its adaptability and stability, is the norm. All of which means you need a database to underpin each of your applications. Designing your databases correctly can make the difference between slow-running, complicated code and software that's speedy, modular, and easy to work with. Database Design for Mere Mortals prepares someone with only a passing familiarity with databases for the important job of building the persistence layer (also called the data model) for software.
Michael Hernandez explains database design in tradesman's terms. That is, he shows his readers how to identify the business problems that have to be satisfied by a database, then proceeds to explain how to build a solid solution to them. Hernandez's approach combines procedural guidelines (first identify critical facts, then apply a certain logic to yield tables, then establish cross-references, and so on) with practical definitions that clear up much of the rich trove of jargon surrounding databases. He walks through numerous examples, and doesn't shy away from the complexities that always exist in real customers' requirements. If you're not familiar with database design, and want to be, this is the book you need. --David Wall
Topics covered: How to design databases that fit business requirements and make software construction easier. In addition to explaining relational database concepts, the author explains data integrity, null values, keys, table relationships (one-to-one, one-to-many, and many-to-many), and data types. He emphasizes processes designers should follow in building a new database or improving an existing one.
Beginning Database Design: From Novice to Professional provides short, easy-to-read explanations of how to get database design right the first time. This book offers numerous examples to help you avoid the many pitfalls that entrap new and not-so-new database designers. Through the help of use cases and class diagrams modeled in the UML, youll learn how to discover and represent the details and scope of the problem in question.
Database design is not an exact science, and solid database design principles and examples help demonstrate the consequences of simplifications and pragmatic decisions. The rationale is to try to keep it simple, but allow room for development as situations change or resources permit. The book also features an introduction for implementing the final design in a relational database.
About this product: Database Systems: Design, Implementation, and Management, Eighth Edition, a market-leader for database texts, gives readers a solid foundation in practical database design and implementation. The book provides in-depth coverage of database design, demonstrating that the key to successful database implementation is in proper design of databases to fit within a larger strategic view of the data environment. Updates for the eighth edition include additional Unified Modeling Language coverage, expanded coverage of SQL Server functions, all-new business intelligence coverage, and added coverage of data security. With a strong hands-on component that includes real-world examples and exercises, this book will help students develop database design skills that have valuable and meaningful application in the real world.
About this product: Databases are the nerve center of our economy. Every piece of your personal information is stored there-medical records, bank accounts, employment history, pensions, car registrations, even your children's grades and what groceries you buy. Database attacks are potentially crippling-and relentless.
In this essential follow-up to The Shellcoder's Handbook, four of the world's top security experts teach you to break into and defend the seven most popular database servers. You'll learn how to identify vulnerabilities, how attacks are carried out, and how to stop the carnage. The bad guys already know all this. You need to know it too. * Identify and plug the new holes in Oracle and Microsoft(r) SQL Server * Learn the best defenses for IBM's DB2(r), PostgreSQL, Sybase ASE, and MySQL(r) servers * Discover how buffer overflow exploitation, privilege escalation through SQL, stored procedure or trigger abuse, and SQL injection enable hacker access * Recognize vulnerabilities peculiar to each database * Find out what the attackers already know
Go to www.wiley.com/go/dbhackershandbook for code samples, security alerts , and programs available for download.
Hoffer focuses on the latest principles, concepts and technologies and what leading practitioners say is most important for database developers.
Database analysis, database design, SQL, client/server database environment, data warehousing, data quality and integration, and object-oriented data modeling.
Intended for professional development programs in introductory database management.
About this product: Refactoring has proven its value in a wide range of development projects--helping software professionals improve system designs, maintainability, extensibility, and performance. Now, for the first time, leading agile methodologist Scott Ambler and renowned consultant Pramodkumar Sadalage introduce powerful refactoring techniques specifically designed for database systems. Ambler and Sadalage demonstrate how small changes to table structures, data, stored procedures, and triggers can significantly enhance virtually any database design--without changing semantics. You'll learn how to evolve database schemas in step with source code--and become far more effective in projects relying on iterative, agile methodologies. This comprehensive guide and reference helps you overcome the practical obstacles to refactoring real-world databases by covering every fundamental concept underlying database refactoring. Using start-to-finish examples, the authors walk you through refactoring simple standalone database applications as well as sophisticated multi-application scenarios. You'll master every task involved in refactoring database schemas, and discover best practices for deploying refactorings in even the most complex production environments. The second half of this book systematically covers five major categories of database refactorings. You'll learn how to use refactoring to enhance database structure, data quality, and referential integrity; and how to refactor both architectures and methods. This book provides an extensive set of examples built with Oracle and Java and easily adaptable for other languages, such as C#, C++, or VB.NET, and other databases, such as DB2, SQL Server, MySQL, and Sybase. Using this book's techniques and examples, you can reduce waste, rework, risk, and cost--and build database systems capable of evolving smoothly, far into the future.
About this product: This book is intended for IT professionals and students who want to learn how to design, analyze, and understand databases. The material will benefit those who want a better high-level understanding of databases such as proposal managers, architects, project managers, and even customers. The material will also benefit those who will actually design, build, and work with databases such as database designers, database administrators, and programmers. In many projects, these roles overlap so the same person may be responsible for working on the proposal, managing part of the project, and designing and creating the database.
This book is aimed at IT professionals and students of all experience levels. It does not assume that you have any previous experience with databases or programs that use them. It doesn’t even assume that you have experience with computers. All you really need is a willingness and desire to learn.
This book explains database design. It tells how to plan a database’s structure so the database will be robust, resistant to errors, and flexible enough to accommodate a reasonable amount of future change. It explains how to discover database requirements, build data models to study data needs, and refine those models to improve the database’s effectiveness.
The book solidifies these concepts by working through a detailed example that designs a realistic database. Later chapters explain how to actually build databases using two common database products: Access 2007 and MySQL.
The book finishes by describing some of the topics you need to understand to keep a database running effectively such as database maintenance and security.
This book explains database design. It tells how to determine what should go in a database and how the database should be structured to give the best results.
This book does not focus on actually creating the database. The details of database construction are different for different database tools so, to remain as generally as useful as possible, this book doesn’t concentrate on any particular database system. You can apply the techniques described here equally to whatever database tool you use whether it’s Access, SQL Server, Oracle, MySQL, or some other database product.
Most database products include free editions that you can use for smaller projects. For example, SQL Server Express Edition, Oracle Express Edition, and MySQL Community Server are all free.
To remain database neutral, the book does not assume you are using a particular database so you don’t need any particular software or hardware. To work through the Exercises, all you really need is a pencil and some paper. You are welcome to type solutions into your computer if you like but you may actually find working with pencil and paper easier than using a graphical design tool to draw pictures, at least until you are comfortable with database design and are ready to pick a computerized design tool.
“Goals of Effective Database Design,” explains the reasons why people and organizations use databases. It explains a database’s purpose and conditions that it must satisfy to be useful. This also describes the basic ACID (Atomicity, Consistency, Isolation, Durability) and CRUD (Create, Read, Update, Delete) features that any good database should have. It explains in high-level general terms what makes a good database and what makes a bad database.
“Database Types,” explains some of the different types of databases that you might decide to use. These include flat files, spreadsheets, hierarchical databases (XML), object databases, and relational databases. The relational database is one of the most powerful and most commonly used forms of database so it is the focus of this book, but it is important to realize that there are alternatives that may be more appropriate under certain circumstances. This gives some tips on deciding which kind of database might be best for a particular project.
“Relational Database Fundamentals,” explains basic relational database concepts such as tables, rows, and columns. It explains the common usage of relational database terms in addition to the more technical terms that are sometimes used by database theorists. It describes different kinds of constraints that databases use to guarantee that the data is stored safely and consistently.
“Understanding User Needs,” explains how to learn about the users’ needs and gather user requirements. It tells how to study the users’ current operations, existing databases (if any), and desired improvements. It describes common questions that you can ask to learn about users’ operations, desires, and needs, and how to build the results into requirements documents and specifications. This explains what use cases are and tells how to use them and the requirements to guide database design and to measure success.
“Translating User Needs into Data Models,” introduces data modeling. It explains how to translate the user’s conceptual model and the requirements into other more precise models that define the database design rigorously. This describes several database modeling techniques including user-interface models, semantic object models, entity-relationship diagrams, and relational models.
“Extracting Business Rules,” explains how a database can handle business rules. It explains what business rules are, how they differ from database structure requirements, and how you can identify business rules. This explains the benefits of separating business rules from the database structure and tells how achieve that separation.
“Normalizing Data,” explains one of the biggest tools in database design: normalization. Normalization techniques allow you to restructure a database to increase its flexibility and make it more robust. This explains the various forms of normalization, emphasizing the stages that are most common and important: first, second, and third normal forms (1NF, 2NF, and 3NF). It explains how each of these kinds of normalization helps prevent errors and tells why it is sometimes better to leave a database slightly less normalized to improve performance.
“Designing Databases to Support Software Applications,” explains how databases fit into the larger context of application design and lifecycle. This explains how later development depends on the underlying database design. It discusses multi-tier architectures that can help decouple the application and database design so there can be at least some changes to either without requiring changes to the other.
“Common Design Patterns,” explains some common patterns that are useful in many applications. Some of these techniques include implementing various kinds of relationships among objects, storing hierarchical and network data, recording temporal data, and logging and locking.
“Common Design Pitfalls,” explains some common design mistakes that occur in database development. It describes problems that can arise from insufficient planning, incorrect normalization, and obsession with ID fields and performance.
“User Needs and Requirements,” walks through the steps required to analyze the users’ problem, define requirements, and create use cases. It describes interviews with fictitious customers that are used to identify the application’s needs and translate them into database requirements.
“Building a Data Model,” translates the requirements gathered in the previous into a series of data models that precisely define the database’s structure. This builds user-interface models, entity-relationship diagrams, semantic object models, and relational models to refine the database’s initial design. The final relational models match the structure of a relational database fairly closely so they are easy to implement.
“Extracting Business Rules,” identifies the business rules embedded in the relational model. It shows how to extract those rules in order to separate them logically from the database’s structure. This makes the database more robust in the face of future changes to the business rules.
“Normalization and Refinement,” refines the relational model by normalizing it. It walks through several versions of the database that are in different normal forms. It then selects the degree of normalization that provides a reasonable tradeoff between robust design and acceptable performance.
“Microsoft Access,” explains how to build a database with Microsoft Access 2007. This explains enough to get started and to use Access to build non-trivial databases. You can use other versions of Access to work through this, although the locations of menus, buttons, and other Access features are different in different versions.
“MySQL,” explains how to build a database with MySQL. This tells where to download a free version of MySQL. It explains how to use the MySQL Command Line Client as well as some useful graphical tools including MySQL Query Browser and MySQL Workbench.
“Introduction to SQL,” provides an introduction to SQL (Structured Query Language). It explains how to use SQL commands to add, insert, update, and delete data. By using SQL, you can help insulate a program from the idiosyncrasies of the particular database product that it uses to store data.
“Building Databases with SQL Scripts,” explains how to use SQL scripts to build a database. It explains the advantages of this technique, such as the ability to create scripts to initialize a database before performing tests. It also explains some of the restrictions on this method, such as the fact that the user must create and de...
Want to learn about databases without the tedium? With its unique combination of Japanese-style comics and serious educational content, "The Manga Guide to Databases" is just the book for you.
Princess Ruruna is stressed out. With the king and queen away, she has to manage the Kingdom of Kod's humongous fruit-selling empire. Overseas departments, scads of inventory, conflicting prices, and so many customers! It's all such a confusing mess. But a mysterious book and a helpful fairy promise to solve her organizational problems-with the practical magic of databases.
In "The Manga Guide to Databases," Tico the fairy teaches the Princess how to simplify her data management. We follow along as they design a relational database, understand the entity-relationship model, perform basic database operations, and delve into more advanced topics. Once the Princess is familiar with transactions and basic SQL statements, she can keep her data timely and accurate for the entire kingdom. Finally, Tico explains ways to make the database more efficient and secure, and they discuss methods for concurrency and replication.
Examples and exercises (with answer keys) help you learn, and an appendix of frequently used SQL statements gives the tools you need to create and maintain full-featured databases.
(Of course, it wouldn't be a royal kingdom without some drama, so read on to find out who gets the girl-the arrogant prince or the humble servant.)
This EduManga book is a translation of a bestselling series in Japan, co-published with Ohmsha, Ltd., of Tokyo, Japan.
Learn to access Oracle databases through SQL statements and construct PL/SQL programs with guidance from Oracle expert, Jason Price. Published by Oracle Press, Oracle Database 11g SQL explains how to retrieve and modify database information, use SQL Plus and SQL Developer, work with database objects, write PL/SQL programs, and much more. Inside, you'll find in-depth coverage of the very latest SQL features and tools, performance optimization techniques, advanced queries, Java support, and XML. This book contains everything you need to master SQL.
Explore SQL Plus and SQL Developer
Use SQL SELECT, INSERT, UPDATE, and DELETE statements
Write PL/SQL programs
Create tables, sequences, indexes, views, and triggers