author:  Emily Wong title:  MySQL paper ID:  12557575 submitted:  02-11-04 06:32 AM PST
similarity index:  
  (16% matching text)
version:   side-by-side version
       Sources:   
 link 
 match 
Internet
http://www.itl.nist.gov/fipspubs/geninfo.htm
3%
Internet
http://mirrors2.netvisao.pt/press/user_stories/ap.html
2%
Internet
http://answers.google.com/answers/threadview?id=245416
2%
Internet
http://smithy.kiev.ua/doc/mysql/manual_toc.html
1%
Internet
http://www.enterpriseunix.org/mobile/m_arch_news.php?Rid=03/10/31/7188765
1%
Internet
http://otn.oracle.com/oramag/webcolumns/2002/opinion/deutsch01.html
1%
Internet
http://hardwaregeeks.com/comments.php?id=737
1%
Internet
http://support.bmcweb.com/tutorials/mysql.html
1%
Internet
http://www.integricity.com/article-18
1%
Internet
http://www.microsoft.com/sql/techinfo/development/2000/msde2000.asp
1%
Internet
http://www.databases.about.com/library/weekly/aa052602a.htm
1%
Internet
http://www.mysql.de/news/article-51.html
1%
Internet
http://www-3.ibm.com/software/data/ims/ims/index.html
1%
Internet
http://www.dbs-sar.com/Newsletter/071003.htm
0%
Internet
http://mysql.bigbiz.com/doc/de/Windows_running.html
0%
Internet
http://www.dbazine.com/ch_ims.html
0%
Internet
http://www.evolt.org/article/NASA_switches_from_Oracle_to_mySQL/1/4994/index.html?cfid=165
7661&cftoken=87057775
0%
Internet
http://www.i-tech.com/Storage%20Info%20Center/indnews22.php
0%
Internet
http://code.bunnies.net/mysql/mysqls.php?orderb=id
0%
Internet
http://lists.w3.org/Archives/Public/w3c-ietf-xmldsig/2001OctDec/0141.html
0%
Internet
http://www.phpexamples.net/mysqlman/manual_Introduction.html
0%
      Report text:



1.1.1 MGT 415H5


Group Assignment


MySQL


by


Group 4


M. Mirza

F. Sethi

C. Campus

E. Wong

R. Ballesteros

K. Imbuido

I. Ghani


Introduction...................................3

Companies/Organizations using MySQL.......................3

Business Enabler.................................3

How MySQL works..................................4

Variations/Varieties...................................5

Example...................................5

Explanation of the Example........................ 7

Alternatives....................................9

Alternative 1...............................9

Pro's..............................9

Con's................................9

Alternative 2...............................9

Pro's..............................9

Con's..............................10

Alternative 3................................10

Pro's...............................10

Con's..............................11

Standard Body/Bodies................................11

Bibliography...................................12

Websites................................12


INTRODUCTION


My SQL is an open source relational database management system that is
based on SQL. MySQL AB first used mSQL to ISAM routines to connect their
tables. However, mSQL did not provide the speed or the flexibility they
needed. As a result, they create a new SQL interface with similar API
interfaces as mSQL[i]. Moreover, in the past year, Open source databases,
such as MySQL, have gained popularity among various commercial databases.
Business companies value the ease of implementation, lower cost of
ownership and its ability to integrate with other software. MySQL is
developed by MySQL AB. David Axmark, Allan Larsson and Michael Widenius
founded the company in Sweden in 1995.


COMPANIES/ORGANIZATIONS USING MySQL


Yahoo!

Yahoo! uses MySQL database in operating many of the services on Yahoo!
Finance. The web site provides a full range of financial services and
information. The software is used to provide services such as new
headlines, stock charts, insider trading, SEC filings, conference calls and
earning reports. Jeremy Zawodny from Yahoo! commented on the effectiveness
of MySQL: "One doesn't need weeks of expensive training and a shelf fill of
manuals to make it work well. Also, the MySQL support is truly
outstanding
."


NASA

NASA's Marshall Space Flight Centre recently completed the transition of
the NASA Acquisition Internet Service (NAIS) from Oracle to MySQL
. Their
transition proved that federal agencies have started to switch over to open-
source software[ii]. Dwight Clark, the computer systems analyst and
project leader for NAIS commented on the impact of MySQL: "We have noticed
an increase in [speed of] performance
.we kept waiting for the other shoe to
fall from the time we started investigating mySQL, but it never did
.[iii]"
One of the advantages of MySQL is its robustness and low cost, which suits
the tightening of NAIS's annual budget.


The Associate Press (AP)

AP utilized MySQL to power "AP Hosted News" which is a service that allows
their worldwide news providers to integrate AP hosted content into their
web sites
. ". MySQL, with its free GPL license, was by far the best
solution for our application
," said Terry Ewing, a senior systems manager.
"MySQL has an ease of setup and deployment and a license that.gives us
flexibility to slap the database on a box and make it live without the
encumbrances of licensing. This is a critical business requirement in these
days of news-by-the-minute
.[iv]" MySQL provided the flexibility and
capacity for the heavily traffickated site.


BUSINESS ENABLER

Reduces database licensing costs

Users can obtain the database for free under the terms of the GNU General
Public License
. Any and all users who comply to the license agreements
have the right to copy, modify, and distribute the software. Under the
dual license system, users would have to purchase the commercial license if
they wanted to reserve their modifications[v].

Cuts system downtime

Fast command execution as SQL functions are implemented through a highly
optimized class library and should be as fast as possible
[vi].

Fast table check and repair utility. "Isamchk" is the repair utility that
will check, repair files and report information about them[vii].

Low cost of ownership

According to data provided by International Data Corporation, the usage of
MySQL lowers the following costs: server hardware costs by 12%-15%;
software license cost by 8%- 10%; administration, development, support cost
by 50%-70%; and client hardware cost by 10%-12%[viii].

No memory leaks as it has been tested with a commercial memory leakage
detector[ix]

There are many sources of maintenance available. For example, there are
open-source projects such as ObjectWeb consortium that have developed
advanced features for further improvement.

Rapid development:

MySQL staff develop new release every 4-6 weeks[x].

Software is throughly tested(battle-tested):

new releases are immediately downloaded by large numbers of users which
leads to massive parallel testing and debugging[xi].

Scalability

Coded to be multithreaded to take advantage of situations where multi-user
applications and/or symmetric multiprocessor systems are present[xii]

Flexible:

The database software is compatible with languages such as C, C++, Eiffel,
Java, Perl, PHP and Python. It provides application-programming interfaces
for all the languages mentioned.

18. Compatible:

The software runs on various platforms including UNIX, Windows, Macintosh
OS, and major Linux distribution.


HOW MySQL WORKS


MySQL is a database management system used to add, access and process data
stored on a database. The data is stored in schematic tables to increase
efficiency and flexibility. Data is inserted to and extracted from these
tables using the MySQL query language. The following is an illustration of
how this process works.


Suppose you own a used car dealership and would like to keep record of all
vehicles in its warehouse. You can do so by creating tables to hold your
data and loading them with the desired information. Then you can retrieve
data from the tables about your vehicles by querying your database.
Assuming that MySQL is installed on your server, you would need to connect
to the database server by providing a username and password. Once
connected you are ready to access your database. This is achieved by the
USE command as follows where 'dealership' is the name of the database that
will hold vehicle information.


mysql> use dealership;

The first step in loading the database is deciding how it will be
structured, i.e. how many tables will be needed and what columns to include
in each. Each row of each table consists of one record comprised of a key
attribute and a number of associated attributes.

To create a table, use the CREATE TABLE statement to specify the layout of
its attributes. For text attributes, you will need to specify the type data
to be stored, i.e. VARCHAR. For numerical attributes, INT is the data
type. The data type and length must be specified upon initialization of
each table as well as the table name.

To load your table with data, use the INSERT statement. The
parameters after 'INSERT' specify the attributes in the order that they
were created and will appear in the table. To simultaneously create and
populate your table with the desired data, you can create a text file that
contains the MySql commands for creation and insertion. Each 'INSERT'
statement will correspond to one vehicle record in the table. Then with a
single LOAD DATA statement all the file contents will be loaded into the
database.

To retrieve data use the SELECT statement. This will draw
information from the desired table. Data can be retrieved on the basis of
what you want to see, from which table to retrieve it and any conditions to
qualify for retrieval.

VARIATIONS/VARIETIES OF MYSQL


There are currently four versions of the MySQL database server available:

MySQL STANDARD includes standard MySQL storage engines and the InnoDB
storage engine. InnoDB is a transaction safe, ACID compliant storage engine
with
extensive capabilities.[xiii] This version is mainly for users who are
seeking the high-performance capabilities of the MySQL database with full
transaction support. This version is licensed under the GPL.

MySQL MAX includes the standard MySQL search engines, as well as InnoDB
storage engine, and also includes additional extras such as the Berkeley
Database (BDB) storage engine and support for splitting tables across
multiple files to avoid operating system file size limitations
. This
version is for the user who wants early access to cutting edge
features.[xiv]

MySQL PRO is the commercially licensed version of the MySQL STANDARD server
with the same features listed above, and includes InnoDB support.

MySQL CLASSIC only comes with the standard MySQL storage engines, and so
differs from MySQL PRO and MySQL STANDARD in that it does not come bundled
with the InnoDB engine. It is only available under commercial license.[xv]

Example of Basic MySQL Database Management

Shell> mysql -u root

Mysql>

Mysql> SET PASSWORD FOR 'root'@'localhost' = password
('utm');

Mysql> quit


Shell> mysql -u root -p

Enter password: ***

Mysql>


Mysql> CREATE DATABASE Course;

Mysql> USE Course

Database changed


Mysql> CREATE TABLE grades (last_name VARCHAR(20),

-> first_name VARCHAR(20), student_id int, test_grade int,
project_grade int,

-> exam_grade int);


Mysql> SHOW TABLES;

Mysql> DESCRIBE grades;


Mysql> LOAD DATA LOCAL INFILE "c:/mysql/data/grades.txt"

-> INTO TABLE grades;


Mysql> SELECT * FROM grades;


Mysql> INSERT INTO grades

-> VALUES ('Licious','Dee','112233','70','70','70');


Mysql> SELECT * FROM grades;


Mysql> UPDATE grades SET

-> test_grade = test_grade + 5;


Mysql> SELECT * FROM grades WHERE first_name = "Brian";


Mysql> SELECT * FROM grades WHERE exam_grade >= "80";


Mysql> SELECT last_name, first_name, student_id FROM grades

-> ORDER BY student_id;


Mysql> SELECT last_name, first_name, student_id FROM grades

-> ORDER BY last_name, first_name;


Mysql> SELECT last_name, first_name, student_id,

-> ((test_grade + project_grade + exam_grade)/3)

-> AS "Final Mark"

-> FROM grades;


Mysql> SELECT * FROM grades WHERE last_name LIKE "b%";


Mysql> SELECT * FROM grades WHERE first_name REGEXP "r";


Mysql> SELECT test_grade, COUNT(*) FROM grades GROUP BY test_grade;


Adding another table


Mysql> CREATE TABLE contact_info (last_name VARCHAR(20),

-> first_name VARCHAR(20), student_id int,

-> contact_lastname VARCHAR(20), contact_firstname VARCHAR(20),

-> contact_number int);


Mysql> LOAD DATA LOCAL INFILE "c:/mysql/data/contact_info.txt"

-> INTO TABLE contact_info;


Mysql> SELECT grades.last_name, grades.first_name,

-> ((test_grade+project_grade+exam_grade)/3)

-> AS "Final Mark",

-> contact_lastname, contact_firstname, contact_number

-> FROM grades, contact_info

-> WHERE grades.student_id = contact_info.student_id;


Other Features


Mysql> GRANT SELECT, INSERT, UPDATE, DELETE

-> ON Course.* TO courseAdmin@localhost

-> IDENTIFIED BY 'courseinfo';


Mysql> REVOKE ALL PRIVILEGES ON Course.*

-> FROM courseAdmin@localhost;


Mysql> DELETE FROM user WHERE user = 'courseAdmin';


Shell> mysqldump -u root -p --opt Course [xvi]

Sources used for this example are an amalgamation of three websites that
are listed in the bibliography. They are also end noted as 16, 17, and 18
in the bibliography.

EXPLANATION OF THE EXAMPLE

Before working with MySQL it is necessary to install the proper
distribution depending on what platform is being used (for our purposes we
will assume it is Windows XP). The next step is to launch a command prompt
(which can be found in the Start Menu under 'Programs' then 'Accessories')
[xvii]. For this example when you see "Shell>", this indicates that the
following statement is run from the command prompt in the 'bin' directory
of the installation (i.e. C:\mysql\bin\). Conversely, when you see
"Mysql>", this means that you are connected to the database server and from
this point can run commands related to that server until the session is
over. Also note that if just the "->" comes up then the previous line or
lines of code are not finished. To end a line of code, use the semi-colon
and to cancel a line of code, use the "/c" command.

The first command in this example shows how to connect to the server as the
root user. It is important for security reasons that we immediately set a
password for this user so that others cannot trespass into our server and
access our database(s). When this is done, the user types the quit command
to exit the server and by reconnecting, verifies that the password
protection is in place. Once we have again gained access to the server our
first line of business is to create a database to organize and store some
information. In this example we will create a database called "course" to
store tables of information related to students participating in a specific
course. After the database has been created, the "use" command selects the
database in which are working with. Next a table is created called
"grades" with columns created for each value asked for in that command. In
this case the first column will be for last names, the second for first
names, the third for student id numbers, the forth for a test mark, the
fifth for a project mark, and lastly an exam mark (each name is stored as a
variable length string and the student id and marks are integers -- it is
also assumed that these are the only three marks consisting of the final
grade with equal weighting to each). To verify that the table was created
we can use the "show" command and to get a more detailed view we can use
the "describe" command.

We are now ready to load data from a file into our empty table. The
information in the file "information.txt" is shown here:


Goode Brian 123456 75 85 80

Doe John 654321 70 80 90

Credible Justin 246810 60 70 65

Powers Austin 902100 50 70 60


To verify that the information has been imported into the table
successfully we use the "SELECT * FROM grades" command. This will show us
our table with 4 rows of data. But here we realize that a student has been
left out so we use the "INSERT INTO grades" command to add another row to
our table (again verify by using the "SELECT * FROM" command). We can also
use "UPDATE" to manipulate the data in other ways, for example a professor
that decides that the T.A. marked the projects too harshly and wants to
boost every students project grade by 5 marks. This is accomplished by
using the "UPDATE grades SET" command.

Another option is to search the table for information fitting our own
specified criteria. For example our first such selection shows only the
rows of the table where the first name is "Brian". When multiple entries
are show you can add the "ORDER BY" command to sort them from smallest to
largest value (use of "DESC" will sort them the other way). To further our
selection capabilities we can use the table values to make a calculation
and then show it in its own column under a heading we choose shown by the
"AS 'Final Mark'" command. In the next command we use the term "LIKE" to
search for a pattern in the data and the "%" to define that pattern as any
row where the last name starts with a "B". The other type of pattern
recognition employed by MySQL is extended regular expressions. The command
with 'REGEXP "r"' will find rows where the first name contains an "r". The
last of the commands, before we add another table to the mix, selects every
data item in the test_grade column, counts the frequency of each grade and
displays the results.

It is now time to add another table of information (student contacts and
contact phone numbers), and relate it to our first table of student
information. The "CREATE TABLE" and "LOAD" commands are very similar to
the previous table's commands. The data in the "contact_info.txt" is as
follows:


Goode Brian 123456 Goode Bob 905-555-
9876

Doe John 654321 Doe Jane 905-888-1234

Credible Justin 246810 Credible Notvery 905-555-5555

Evil Scott 902100 Evil Doctor 905-222-
2222

Foreman George 987654 Foreman George 416-888-
4444


This final command combines many of the commands we have already used like
"SELECT", "AS", "FROM", and "WHERE". The "SELECT" command is choosing the
columns to display, the "AS" command is making a column for the calculation
of the final marks, the "FROM" command is letting the server know it needs
data from both the "grades" and "contact_info" tables, and finally the
"WHERE" command is linking the two tables together by the student id
numbers.

Under the "Other Features" section, the first command grants access of 4
commands (SELECT, INSERT, UPDATE, and DELETE) on the "course" database to
the user named "courseAdmin" on the local host using the password
"courseinfo". The second command revokes all privileges that the user
"courseAdmin" had on the "course" database. But this does not delete the
user, to do this, we must use the "DELETE FROM" command and specify which
user is to be deleted. To execute the last command of this example
document we must go back to the original shell. By executing "mysqldump"
with the given parameters and options we are able to backup the entire
"course" database (both structure and data intact) [xviii].

Sources used for the explanation of the example are an amalgamation of
three websites and are listed within the bibliography. They are also end
noted as 16, 17, and 18 in the bibliography.

ALTERNATIVES

Alternative 1: Microsoft SQL Server 2000 Desktop Engine (MSDE2000)

"Microsoft SQL Server 2000 is a full-featured relational database
management system (RDBMS) that offers a variety of administrative tools to
ease the burdens of database development, maintenance and administration
."
[xix] Tools that are used most frequently by organizations are: Enterprise
Manager, Query Analyzer, SQL Profiler, Service Manager, Data Transformation
Services and Books Online


Pros:

Lowest maintenance and implementation costs in the industry

Benchmarked for scalability, speed and performance

3. Enables developers to build applications that can scale seamlessly
from portable computers to multiprocessor clusters
.

4. Easy-to-use Business Intelligence Tools [xx]

5. Provide a low-cost option for developers who need a database server
that can be easily distributed and installed with a value-added
business solution
.

6. Portable and Compatible

7. Fully compatible with SQL server 2000

Books Online; a resource providing solutions to administrative,
installation and development issues (before having to turn to the internet
and/or customer service)


Cons:

As a proprietary DB it is pricier than My SQL, inability to integrate with
other software

MSDE has a 2GB limit per database

No GUI like enterprise manager

MSDE has a built-in performance throttle that slows performance when there
are more than 5 simultaneous work items on the server

MSDE does not have Full Text Search support


Alternative 2: Oracle Database


Oracle Database is a Relational Database Management System (RDBMS) that is
designed for enterprises of all types. Many businesses opt to use Oracle
due to its performance, reliability, scalability, and flexibility offering
many advanced features such as clustering. Oracle database 10g is the
latest database released by the company, which is the first to incorporate
grid-computing technology. This technology connects multiple clusters of
desktop computers, servers, storage systems and networks over
geographically dispersed areas for sharing available resources and virtual
collaboration.


1.2 Pros:

Performance:

Tackles complex computing jobs quickly and more efficiently with grid
computing.

Also, with grid computing there's a greater storage capacity over
traditional networks and tremendous processing power due to greater
resources.

A simplified install, greatly reduced configuration and management
requirements, and automatic performance diagnosis and SQL tuning

Process more queries faster than MySql and uses fewer resources.

Provides performance enhancement options; handles large amounts of data.

Scalability:

Utility computing is made possible through efficient provisioning of
servers and the idea of creating a "virtual" pool of many different
servers
.[xxi]

Ability to create a pool of database capacity that can be shared by several
applications
.

Resource sharing for globally scattered IT infrastructure through grid
computing

Availability:

With Oracle Real Application Clusters (RAC), Oracle 10g provides highly
scalable and available database solutions for enterprises.[xxii]

Clusters of servers acting as a single large computer, which shift
resources dynamically between applications reduces the cost of managing the
IT environment[xxiii]

Cons:

Security

A more complex database poses greater security risk. In particular, SSL
(Secure Sockets Layer) which has caused vulnerability in Oracle Database 8i
and Oracle Database 9i.)[xxiv]

Additional nodes entail more points of weakness.

Compatibility issues between Oracle and Open source databases.

Expensive compared to open source database.

Four to six weeks of intensive, expensive classroom training to master
technology.[xxv]


Alternative 3: Information Management System (IMS)


IMS is a database system by IBM, which consists mainly of IMS Transaction
Management System and IMS Database Management System. IMS Transaction
Management System "provides technological leadership to communicate with
the network; manages input/output processing and security; provides message
queuing, formatting, logging and recovery; and ensures scheduling,
execution, and checkpoint/restart of online and batch
messages and data
processing programs".[xxvi] Thus, IMS provides the highest transaction
management availability - in supporting the heterogeneous environments of
consumers; performance - by providing transparency to application
programmers; and integrity- by building existing skills, applications, and
data, at the lowest cost per transaction. Furthermore, IMS Database
Management System "organizes the data in different structures to optimize
storage and retrieval, and ensure integrity and recovery
".[xxvii] IMS
provides the leading edge strength in Data Management by delivering
collaborative software, providing access and management technologies, and
integrating systems management tools.


Pros:


Information Integration:

IMS enables interactive and multimedia applications through IMS Java
support and IMS Connector for Java.

IMS enhances connectivity through a common connector framework that is
consistent with Java interfaces, and therefore makes it easier for
programmers to not worry about the differences between subsystems.


Eased Manageability:

IMS significantly lowered the cost of computing through its operational and
other management improvements, such as enhanced IMS Middleware and Object
Oriented Programming.

Systems Management helped IMS customers in managing their e-business
servers.


System Scalability:

IMS is known to offer continuous availability to its customers through
consistent review of system defects.

IMS is also the product choice of consumers for its excellent performance,
capacity, integrity, and low cost.


Cons:


Complexity issues from customer's perspective.

Reliability issues: Hardware malfunctions

Size: Conversion, additional hardware costs


STANDARD BODY/BODIES


MySQL aims to follow both the ODBC SQL standard as well as the ANSI SQL.
The formation of SQL standards committees advanced the commercial
acceptance of SQL.

ANSI stands for the American National Standards Institute. It was formed in
1918 and acts as administrator and coordinator of systems of
standardizations throughout the United States.[xxviii] However, ANSI is not
a government agency and as such has no regulatory authority over any
products and services. Though ANSI itself does not create standards, it
accredits standards developers and in cooperation with these standards
developers, it establishes consensus amongst qualified groups who in turn
set guidelines organizations should follow.[xxix] ANSI operates the
National Standards System Network (NSSN). This
acts as a "reference tool
and provides 24-hour access to over 65,000 references to standards and
specifications from the U.S. government, U.S. private sector organizations
and international standards organizations
"[xxx]

The ISO, International Standards Organization, was formed in 1947 by
delegations from 25 countries. It is the world's largest developer of,
mainly technical, standards. ISO is a network of national standards
institutes, including ANSI, with no federal affiliation. The widespread
adoption of International Standards indicates that organizations can
develop their products and services based on specifications that are widely
accepted within their specific sectors. This implies that businesses using
international standards are free to compete in the global market.[xxxi]
Though compliance with ISO standards is voluntary, they are developed as a
response to market demand and are based on a consensus of interested
parties. This helps ensure a widespread compliance with the standards.

In 1989, ISO and ANSI published a SQL specification known as SQL-89;
subsequent improvements led to SQL-92 and SQL-99. One of the main goals of
MySQL is to work towards the ANSI-99 (SQL-99) compliancy but without
sacrificing speed or quality of the code.[xxxii] Though it meets SQL-92
standards, there has been pressure to conform to the newer version of the
standards, as SQL-99 was developed in order to address key advanced
problems, such as improving Internet access to data, the integration with
Java, and the integration of object-based programming models. [xxxiii]

Microsoft SQL is both ANSI SQL-92 compliant and FIPS (Federal Information
Processing Standards) 127-2 standards compliant. FIPS are standards for
interoperability and security developed by the United States government and
published by NIST, the National Institute of Standards and
Technology.[xxxiv] NIST supports the development of voluntary industry
standards both nationally and internationally as the preferred source of
standards to be used by the Federal government. The use of
these standards
helps decrease the cost the government would incur if they developed their
own standards.[xxxv] "NIST collaborates with national and international
standards committees, users, industry groups
, and research and trade
organizations, to get needed standards developed. Federal Information
Processing Standards (FIPS) are developed only when there are no existing
voluntary standards to address Federal requirements for the
interoperability of different systems, for the portability of data and
software, and for computer security
."[xxxvi]

IMS follows ANSI standards development organization, the INCITS
(InterNational Committee for Information Technology Standards).[xxxvii]
INCITS was founded as Accredited Standards Committee X3 in 1961 and it is
"the forum of choice for information technology developers, producers and
users for the creation and maintenance of formal de jure IT
standards
"[xxxviii] while Oracle has been involved with the development of
SQL standards since the beginning. They contributed to SQL enhancements in
1989 and 1999. Jim Melton, Oracle's standards architect, has served
tirelessly as editor of every SQL standard published both in the United
States and internationally, starting with the 1992 specifications
.[xxxix]


BIBLIOGRAPHY


Websites:

-----------------------
[i] http://mysql.mirrors.ilisys.com.au/doc/en/History.html, Feb 6, 2004,
MySQL.com, "1.2.1 History of MySQL",

[ii] http://www.fcw.com/fcw/articles/2000/1204/pol-nasa-12-04-00.asp, Feb
1, 2004, FCW.com, "Open minds on open source"

[iii] http://www.fcw.com/fcw/articles/2000/1204/pol-nasa-12-04-00.asp , Feb
1, 2004, FCW.com, "Open minds on open source"

[iv] http://mysql.planetmirror.com/press/user_stories/ap.html , Jan 26,
2004, "The AP relies on MySQL for transaction-heavy news delivery system"

[v] http://aivpc41.vub.ac.be/persknipsels/persdocu/MySQL.pdf , Jan 29,
2004, "Open Source both day and night: The MySQL Business Model"

[vi] http://vega.uneec.eurocontrol.fr/mysql/manual.html#SEC4, Feb2, 2004,
UNEEC, "MySQL Manual"

[vii] http://vega.uneec.eurocontrol.fr/mysql/manual.html#SEC4 , Feb2, 2004,
UNEEC, "MySQL Manual"

[viii] http://aivpc41.vub.ac.be/persknipsels/persdocu/MySQL.pdf , Jan 29,
2004, "Open Source both day and night: The MySQL Business Model"

[ix] http://vega.uneec.eurocontrol.fr/mysql/manual.html#SEC4 , Feb2, 2004,
UNEEC, "MySQL Manual"

[x] http://aivpc41.vub.ac.be/persknipsels/persdocu/MySQL.pdf , Jan 29,
2004, "Open Source both day and night: The MySQL Business Model"

[xi] http://aivpc41.vub.ac.be/persknipsels/persdocu/MySQL.pdf Jan 29, 2004,
"Open Source both day and night: The MySQL Business Model"

[xii] http://vega.uneec.eurocontrol.fr/mysql/manual.html#SEC4 , Feb2, 2004,
UNEEC, "MySQL Manual"

[xiii] http://www.mysql.com/products/mysql/index.html , Feb 5, 2004,
MySQL.com, "MySQL Database Server"

[xiv] http://www.mysql.com/products/mysql/index.html , Feb 5, 2004,
MySQL.com, "MySQL Database Server"

[xv] http://www.mysql.com/products/mysql/index.html , Feb 5 2004,
MySQL.com, "MySQL Database Server"

[xvi] http://www.mysql.com/articles/mysql_intro.html#SECTION0001000000 ,
Feb 7, 2004, Mysql.com, "Getting started with MySQL"

[xvii]http://www.databases.about.com/library/weekly/aa020401a.htm?once=true
, Feb 7, 2004, About.com, "SQL Fundamentals"

[xviii]http://www.mysql.com/documentation/mysql/bychapter/index.html , Feb
7, 2004, Mysql.com, "MySQL reference manual for version 5.0.0-alpha"

[xix] http://databases.about.com/library/weekly/aa052602a.htm , Jan 28,
2004, About.com, "What you need to know About."

[xx] http://www.microsoft.com/sql/yukon/productinfo/top30features.asp , Jan
29, 2004, Microsoft.com, "Microsoft Windows Server System."

[xxi] http://news.com.com/2100-1010-5061557.html , Feb05, 2004, CNET
News.com, "Oracle Thinks Grid with Database Update"

[xxii] http://otn.oracle.com/products/database/clustering/index.html ,Feb5
2004, Oracle Technology Network, "Oracle Real Application Cluster 10g"

[xxiii] http://www.oracle.com/database/ , Feb05, 2004, Oracle.com, "Oracle
Database"

[xxiv]http://www.eweek.com/article2/0,4149,1405321,00.asp , Feb 5, 2004,
eWeek: Enterprise News & Reviews, "Oracle Issues High-Severity
Vulnerability Warning"

[xxv] http://www.computerweekly.com/Article127589.htm ,Feb 5, 2004,
Computer Weekly, "Upgrade Your Skills to Oracle 10g"

[xxvi] http://www-306.ibm.com/software/data/ims , Feb 2, 2004, IBM.com,
"IMS Family"

[xxvii] http://www-306.ibm.com/software/data/ims , Feb 2, 2004, IBM.com,
"IMS Family"

[xxviii]
http://www.ansi.org/about_ansi/introduction/introduction.aspx?menuid=1 ,
Feb 4, 2004, ANSI, "About ANSI: Introduction."

[xxix] http://www.ansi.org/about_ansi/faqs/faqs.aspx?menuid=1 , Feb 4,
2004, ANSI.org, "About ANSI: National Standardization."

[xxx] http://www.itl.nist.gov/fipspubs/geninfo.htm , Feb 5, 2004,
itl.nist.gov, "Federal Information Processing Standards Publication."

[xxxi] http://www.iso.ch/iso/en/aboutiso/introduction/index.html , Feb 6,
2004, ISO, "About ISO."

[xxxii] http://www.idevelopernetwork.com/manual/Page0054.htm, Feb 4, 2004,
IDeveloper Network, "What is MySQL?"

[xxxiii] http://www.vbip.com/books/1861001800/chapter_1800_02.asp , Feb 5,
2004, VBIP, "A brief history of SQL."

[xxxiv] http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?Microsoft+SQL+Server ,
Feb 5, 2004, FOLDOC, "Miscrosoft SQL server"

[xxxv] http://www.itl.nist.gov/fipspubs/geninfo.htm#nist , Feb 5, 2004,
itl.nist.gov, "National Institute of Standards and Technology and
Information Technology
."

[xxxvi] http://www.itl.nist.gov/fipspubs/geninfo.htm#nist , Feb 5, 2004,
itl.nist.gov, "National Institute of Standards and Technology and
Information Technology
."

[xxxvii]http://otn.oracle.com/oramag/webcolumns/2002/opinion/deutsch01.html
, Feb 5, 2004, Oracle Technology Network, "The Big Deal about Standards."

[xxxviii] http://www.ncits.org/geninfo.htm , Feb 8, 2004, INCITS, "What is
INCITS?"

[xxxix] http://otn.oracle.com/oramag/webcolumns/2002/opinion/deutsch01.html
, Feb 5, 2004, Oracle Technology Network, "The Big Deal about Standards."


Other Websites utilized:


IMS:

http://www-306.ibm.com/software/data/ims/ , Feb 4, 2004, IBM's IMS Site,
"IMS Family"

http://www.dbazine.com/ims.shtml , Feb 4, 2004, Dbazine.com, IMS Resources

http://www.eservercomputing.com/mainframe/articles/index.asp?id=332 , Feb
5, 2004, Eservercomputing.com, Introducing: The new IMS

http://www.dbazine.com/ims.shtml , Feb 6, 2004, Dbazine.com, Security
Options and Considerations for: IMS/OTMA, IMS Connect, and the MQSeries-IMS
Bridge Application



Example:

http://www.mysql.com/articles/mysql_intro.html#SECTION0001000000, Feb 7,
2004, Mysql.com, "Getting Started with MySQL."

http://www.databases.about.com/library/weekly/aa020401a.htm?once=true , Feb
7, 2004, About.com, "SQL Fundamentals"

http://www.mysql.com/documentation/mysql/bychapter/index.html , Feb 7,
2004, Mysql.com, "MySQL reference manual for version 5.0.0-alpha"


Explanation of the Example:

http://www.mysql.com/articles/mysql_intro.html#SECTION0001000000, Feb 7,
2004, Mysql.com, "Getting Started with MySQL."

http://www.databases.about.com/library/weekly/aa020401a.htm?once=true , Feb
7, 2004, About.com, "SQL Fundamentals"

http://www.mysql.com/documentation/mysql/bychapter/index.html , Feb 7,
2004, Mysql.com, "MySQL reference manual for version 5.0.0-alpha"