Week 17 - Database Management Fundamentals
This was the first week in the Database Management course. The transition from Software Design into this course was smooth and I’m looking forward to expanding my skills in data. It was fun working with SQL and Java and putting them together into real-world applications. I got hands-on experience with SQL queries, debugging errors and handling constraint violations, as well as understanding how Java classes can model and manipulate data efficiently.
Homework 1 involved executing a series of SQL queries on a
small course database, just to get familiarized with SQL. The lab had me write queries
to get information from the database, such as instructor names and salaries,
with conditions like sorting and filtering by department. I practiced using SQL
commands to reinforce my understanding of relational database structures
through the use of joins, subqueries, and filtering.
Labs 1 and 3 had me work with SQL operations and focus on
the manipulation of databases with inserting, updating and deleting records within
relational databases. I also learned the importance of enforcing constraints
such as primary keys, foreign keys, and checking constraints to ensure data
integrity and consistency.
In Lab 4, I focused on designing and implementing Java
classes to handle table-like data structures using Schema and Tuple classes.
The Schema class defines the structure of a table by outlining column names,
data types, and primary keys, while the Tuple class represents individual rows
of data that conform to this schema. The assignment had me develop some key
methods like insert, delete and lookup. It also helped me understand the
importance of data encapsulation and schema validation. Lab 8 extended the work
I started in Lab 4 by introducing predicate evaluation for database queries.
This involved implementing basic query conditions like EqCondition,
AndCondition, and OrCondition to evaluate where clauses in SQL-like queries
using Java. The lab required me to create and understand a tree structure to
represent complex conditions. It also had me implement the eval method in the
SelectQuery class to filter data and project it based on specified conditions. Labs
4 & 8 gave me a better grasp of how logical condition evaluation functions
and supports the process of querying in database systems. It was interesting to
see how these concepts translated into code that can manipulate data.
These labs and homework assignments have equipped me with
essential skills in database management. I’m looking forward to using the
skills I have learned in these labs to tackle more complex data management concepts.
Comments
Post a Comment