CPSC 3220

File and Database Processing 


Processing of sequential, direct, indexed and hashed files. File sorting and searching techniques. Database concepts using the relational model, relational algebra and relational calculus. Database design with E-R modeling techniques, SQL programming. Prerequisite: CPSC 2100 with a minimum grade of C or department head approval. Differential course fee will be assessed.


  1. After completing this course students should be able to:
  2. Implement file reading and writing programs using PHP.
  3. Identify file access schemes, including sequential, direct and indexed sequential file access.
  4. Describe file-sorting and file-searching techniques.
  5. Describe data compression and encryption techniques.
  6. Design a rational database using E-R modeling techniques.
  7. Build a relational database.
  8. Write database queries using SQL.
  9. Implement a web-based relational database using MySQL. 


(Required)  Murach, Joel and Ray Harris.  Murach’s PHP and MySQL. Murach, ISBN-13  978-1-890774-56-1
(Required)  Rockoff, Larry.  Language of SQL.  Cengage, ISBN 978-1-435457-51-5


Course Slides

Lecture 1: Course Overview and File Storage Basics

Lecture 2: Introduction to web development and PHP

Lecture 3: How to code a PHP application: Part I, Part II

Lecture 4: How to work with form data

Lecture 5: How to code control statements

Lecture 6: How to work with strings and numbers

Lecture 7: How to work with dates

Lecture 8: How to create and use arrays

Lecture 9: How to create and use functions: Part I, Part II, Part III

Lecture 10: How to create and use objects

Lecture 11: How to use regular expressions, handle exceptions, and validate data

Lecture 12: Introduction to File Processing with PHP: Part I, Part II

Lecture 13: Indexed Files

Lecture 14: Hashing

Lecture 15: Introduction to relational databases and MySQL: Part I, Part II

Lecture 16: How to use PHP with a MySQL database: Part I, Part II

Lecture 17: How to use the MVC pattern to organize your code

Lecture 18: The Language of SQL: Part I, Part II, Part III, Part IV, Part V, Part VI, Part VII, Part VIII, Part IX

Lecture 19: Creating a database

Lecture 20: Designing a database

Lecture 21: Professional PHP for working with MySQL

Lecture 22: HTML, PHP, MySQL Exercises