CST 363 < ILP < CSUMB < School < Santa Cruz Abalone Works santacruzabaloneworks.com
Home - Info - Arlon - Featured - School - People - Schools
Cabrillo | Cal Poly SLO | CSUMB
ILP
CST 231 | CST 237 | CST 238 | CST 300 | CST 311 | CST 328 | CST 329 | CST 334 | CST 336 | CST 338 | CST 363 | CST 370 | CST 383 | CST 438 | CST 462s | CST 499 | General Ed | Math 130 | Math 150 | Math 151 | Math 170

CST 363 - Introduction to Database Systems - Units - 4

This course provides balanced coverage of database use and design, focusing on relational databases. Students will learn to design relational schemas, write SQL queries, access a DB programmatically, and perform database administration. Students will gain a working knowledge of the algorithms and data structures used in query evaluation and transaction processing. Students will also learn to apply newer database technologies such as XML, NoSQL, and Hadoop.

Prerequisite(s)/Corequisite(s): (Prereq: CST 238 and MATH 130 with a C- or better)

Typically Offered: Fall, Spring

Units: 4

My Experience in CST-363 - Introduction to Databases and Data Warehouses:

I learned tons of new database manipulation skills in this class from getting tons of join practice which I really needed in MySQL to JDBC which I've been wanting to get going for years, tried to a long time ago and failed, but succeeded just fine with knowledge from this class and then went on to also learn really neato stuff like SpringTools, SpringBoot, MongoDB, which I really liked, I found it fun and powerful for aggregating data, a new concept to me and it seems super useful. Rendering MySQL database MySQL setup code from ER diagrams super blew my mind. Here are links to my journals:

Links:
I put lots of example knowledge in my journals as I came across it. Data warehouses make so much sense, and I already knew about them instinctively but it's really good to know they are a thing. Here are some screenshots from class work: Screenshot from CST-363 Intro to Database Systems
This is actually a screenshot of a MySQL Workbench as an ER diagram of the database from my game, Super Bomb Reversi, rendered in MySQL Workbench as an ER diagram.

Screenshot from CST-363 Intro to Database Systems
These are the plugins you need installed to make Spring Boot work with JDBC.

Screenshot from CST-363 Intro to Database Systems
MySQL query rendered at the client. This is Java server running as Spring Boot connecting to MySQL through JDBC rendering HTML, JavaScript and CSS with SpringBoot for the page to render.

Screenshot from CST-363 Intro to Database Systems
Another SpringBoot page MySQL query rendered at the client in HTML/JavaScript/CSS through Java SpringBoot.

Screenshot from CST-363 Intro to Database Systems
The green messages are validation, and that is a big part of what this is doing: it is supposed to say if it's entered wrong. So it's checking the database and sending messages back to the client so validation messages can happen.

Screenshot from CST-363 Intro to Database Systems
There can be more than one message in the validation message since there is more than one data field.

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems
That's PHPMyAdmin on the right, I like it a lot and fall back on it a lot too.

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems
These are mostly all just screenshots of 'it working'. This one is a screenshot of data that has been entered into the form and has been recalled from the DataBase to the client and is displayed at the client.

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems




Mongo DB is JavaScript and you can actually get quite creative with it:
Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems

Screenshot from CST-363 Intro to Database Systems You get JSON output, it's for aggregating results from large data sets, you get back summaries in JSON depending on what you ask it.

Screenshot from CST-363 Intro to Database Systems I absolutely swear by Notepad++ - even if I'm using an IDE or another editor like Repl.it: I still heavily rely on being able to use Notepad++ to fall back on for larger documents when the editing gets heavy.

Screenshot from CST-363 Intro to Database Systems

I had to skimp on a lot of the ER diagram screenshots because most of them were assignments, but I left the one that represented the simple database I designed (trivially) years ago for my game, Super Bomb Reversi, a Reversi tournament web app that uses a comet framework I made to keep the page data live for the tournament. Anyways this class was so important and the knowledge from it is so needed, I am so glad to have been given the chance to learn that knowledge!

I probably said it in my journal too but MySQL Workbench is a really great tool. Graphically creating an ER diagram and rendering MySQL database generation code from it is gold. Most of my screenshots of it were class-work related so I'll leave them out but I did leave the ER diagram from my game there. Another thing I thought was cool about it you can't do (that I know of) in PHPMyAdmin is clicking on individual lines to execute individual lines from a script. In PHPMyAdmin you can execute individual lines but not when they're in the middle of a bunch of other lines, you have to manually separate them if you want to do that. So I thought that was kind of neat, useful for a few things, like manual slow-down of a script for one thing, or just picking lines out of it later for another.

Another thing that was cool about this class was that it exceeded my expectations. The knowledge taught by the class passed up my own knowledge on the day of orientation and progressed steadily along for the eight weeks, so I was on my toes the whole time, even though I had pre-existing background knowledge of using MySQL for my game and a few other projects. I didn't have a strong background, like I did with Java but still, passing my knowledge up on the day of orientation was really cool, and I was really glad to learn so much from the class. I think the number one most important two things from the class were learning that there's 'of' in JavaScript (side lesson that is really important) and the super-joins practice we got with doing tons and tons of joins. Also ER modeling->full MySQL database, getting JDBC going, SpringBoot, and MongoDB was really neato. The joins practice I'm pretty sure was invaluable. Also, prior to the class I had no idea you could put arithmetic in queries, use a comma instead of keywords 'inner join' to do joins, put select statements inside insert statements for loading databases from databases and the vast array of MySQL details articulately explained in detail for us during this course.

List of MySQL paradigms I practiced during the class:

  • Mega practice with Joins
  • JDBC
  • MongoDB
  • JavaScript 'for'
  • ER Diagrams, designing, implementing databases
  • more

And, our group database design and report we made:
Our group database design and report we made
My job was to design the database and implement the design in the website with JDBC.

       Powered by       Santa Cruz Web Factory