Path: C++ : Database :
Path: Database :

Database

SQL Database General Knolage:


  example database - MySQL database example that shoes how to force referential integrity in a relational MySQL database

 Laws of Normailization:
  1. all tables must have a unique identifier for each entry in the table
  2. no repeating values in a table (make them a seperate table that gets referenced with an identifier number)
  3. no multiple values in one field (make them seperate colums in a table)
  4. referential integrity must be maintained
  5. no parallel copy of the database is allowed
  6. data integraty maintaind
  7. system falt or glitch recovery
  8. database security can not be compromised
  9. system security can not be compromised
  10. loggoing to know what happened
  11. week entity can only exist with the existence of sepecific whole entity
  12. make the primary key the size of the data word (optimization)

 An identifier number the size of a dataword for a table makes the database run fast.


C++ Database:


  disk_tools - C++ template API for binary file data structures
  db_tools - C++ API for Berkeley DB
  sql_tools - C++ API for MySQL

Examples


  Oracle Example - simple ret-a-car database

Database Applications:


  sqld - Java SQL database server


Database Links:


Oracle - is expansive in functionality and is commercial and commercially supported. Good data integrity assurance. Referential integrity and transactions are supported.

Microsoft SQL Server - is commercial and supports referential integrity, transactions and has a graphical interface for windows.

Microsoft Access - is commercial and is best used for single user database. Nice interface that makes it easy to work with.

MySQL - free multithreaded SQL server that supports multiple table types and can enforce referential integrity.

Postgres SQL - free database that supports a lot of features.

mSQL - free small SQL database server.

Berkeley DB - Berkley DB is a programmatic database for C, Java and C++ (it is maintained by Oracle)