Skip to main content

Three Most Important Things I Learned in CST363-30: Intro to Database Systems

In CST363-30: Intro to Database Systems, I learned many new concepts that changed the way I think about data and software development. The first important thing I learned was how relational databases like MySQL work. I now understand how to create tables, define primary and foreign keys, and use SQL commands such as SELECT, INSERT, UPDATE, and DELETE to manage data. Learning how to design databases using Entity-Relationship (ER) diagrams and normalization helped me see how organized structures reduce redundancy and improve data accuracy. This part of the course gave me a strong foundation for understanding how information is stored and related inside real business systems.

The second major thing I learned was how to connect databases with Java using JDBC. This skill showed me how programming languages interact with databases to build full applications. I practiced writing Java programs that could add, read, or update data in a MySQL database, and I learned how to handle transactions with commit and rollback. It made me realize the importance of managing errors and keeping data consistent. This connection between SQL and Java helped me understand how backend systems work in real projects, which is valuable for my goal of becoming a software engineer.

The third important lesson was learning about NoSQL databases like MongoDB. Unlike MySQL, MongoDB stores data as flexible JSON-like documents, which makes it easier to adapt when data changes. Through the labs, I saw how MongoDB is useful for modern applications such as e-commerce or social media platforms where data does not always fit into strict tables. Comparing MySQL and MongoDB helped me understand when to use each type—MySQL for structured, consistent data, and MongoDB for fast and flexible development.

Overall, this course gave me both technical skills and problem-solving experience. I learned not only how to store and retrieve data, but also how to design efficient systems that keep information reliable. These lessons connect directly to my future goals in software engineering and cybersecurity, where understanding how data is organized, secured, and accessed is essential. I feel more confident now in building applications that use databases effectively and in continuing to explore advanced topics like performance tuning, indexing, and large-scale data management.

Comments

Popular posts from this blog

CST383: Learning Probability Distributions and Data Visualization in Python

This week, I learned more about probability distributions, density plots, histograms, and how to visualize data using Python libraries such as Pandas, Matplotlib, Seaborn, and SciPy. I practiced creating density plots, box plots, cumulative density plots, and histograms using real datasets. I also learned how changing things like bin width, bandwidth, transparency, and sample size can affect the appearance and interpretation of graphs. Another important topic was understanding skewness and how transformations such as log10 can help make heavily skewed data easier to analyze. One thing I found interesting was how probability density functions (PDFs) and histograms can represent the same data differently. Before this week, I thought graphs mostly showed the same information in different styles, but now I understand that each type of plot has a different purpose and can make patterns easier or harder to notice. I also learned that larger sample sizes tend to reflect the true distribution...

Choosing Between MongoDB and MySQL

This week I learned more about how MongoDB and MySQL are both powerful tools for managing data, but they serve different purposes. MySQL is a relational database that organizes data into tables with rows and columns. It uses SQL (Structured Query Language) to define and manage data, which makes it very structured and reliable. MongoDB, on the other hand, is a NoSQL database that stores data as documents in a flexible JSON-like format . It does not require a fixed schema, so it is easier to change or add new data types as needed. Both databases are similar because they can handle large amounts of data, support indexing for faster searches, and allow users to perform queries to get specific information. They are also widely used in modern applications and can be connected to programming languages like Java, Python, or C++. However, the key difference is how they store and organize data. MySQL is best when data has clear relationships, such as in school systems, banking, or employee ...

CST383 Week 1: Python for Data Science

This week, I learned the basics of Python for data science and how tools like NumPy are used. I already have programming experience from my computer science classes, but Python feels different from languages like Java or C++. It is easier to write and more flexible because it does not require strict data types. This makes coding faster, but I also need to be careful to avoid mistakes. We also learned about the Python data science ecosystem, such as NumPy, Pandas, and tools like Google Colab and Jupyter Notebook. I liked using Google Colab because it is simple and runs in the browser, so I don’t need to install anything. However, I am curious when it is better to use local tools like Spyder or Jupyter instead of Colab. The most important concept for me this week was NumPy. I learned that NumPy arrays are much faster than Python lists because they store data in a continuous block of memory and use the same data type. This connects to what I learned in my algorithms class, where performan...