 |
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" |
 |
|