Git Product home page Git Product logo

databases's People

Contributors

acadavid avatar alexandersaid avatar allhandsondeck avatar breus avatar cgduncan7 avatar chris-gunawardena avatar danlaudk avatar dependabot[bot] avatar fatmahameed avatar filievski avatar gajduk avatar gijscor avatar ginastavropoulou avatar hatemkhattab avatar jasongwartz avatar jidarwish avatar josephinehyf avatar laurensrietveld avatar mkruijt avatar noergitkat avatar old-profile avatar robvk avatar sergperep avatar shadoo77 avatar stasel avatar tjebbee avatar tkaria avatar tomasvanrijsse avatar unmeshvrije avatar wilgert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

databases's Issues

Missing an example for unique key

INSERT INTO database_reading_material (unique_key) VALUES ('An example of how to define a unique key when creating a table') 🙂

Remove Set autocommit

Students where asking about set autocommit = 0
In my opinion we shouldn't mention this syntax and only keep the subject concise by only talking about START TRANSACTION, COMMIT and ROLLBACK
These keywords do the same as set autocommit but are better words that are also found in ORM's and even in other DBs.

Wrong Syntax in Week1 Readme File

Some of the apostrophes have to be changed into single quotes to run the code properly. The parts that have to be corrected in "setting up code" must be as shown in bullets:

  • create user 'hyfuser'@'localhost' identified with mysql_native_password by 'hyfpassword';
mysql> create user ‘hyfuser’@‘localhost’ identified with mysql_native_password by ‘hyfpassword’;
# This command creates a user 'hyfuser' with password 'hyfpassword' for
# the database server at 'localhost'
  • grant all privileges on . to 'hyfuser'@'localhost';
mysql> grant all privileges on *.* to ‘hyfuser’@‘localhost’;
# This command gives all permissions to user 'hyfuser'.
(*.*) means every table of every database.

Week3 Exercise 3 improvements

By week 3 the students are used to work with the promisified execQuery.

The exercise could be upgraded so there are less questions about the weirdness / old school approach.

const execQuery = util.promisify(connection.query.bind(connection));

async function getPopulationFromCountry(name, code) {
  // assuming that connection to the database is established and stored as conn
  return execQuery(
    `SELECT Population FROM `country` WHERE Name = '${name}' and code = '${code}'`
  );
}

Remove content concerning super keys and candidate keys

This subject is highly theoretical (and even feels unnatural to and to students) when designing a database.

IMHO without this topic they would be just a good in database designing as without it.
And i'd rather include some other topic like

  • how style your code around queries (models, migrations, seeds)
  • ORM

Full SQL Tutorial Video

I think the database module is complex as javascript modules. Students (we) are preparing their self to hardness and complexity of javascript but not to the database. I think they should be warned for the database module as they were warned for javascript. Because MySQL is one of the most important tools for us to keep it in our skills.

Briefly, there should be a useful full tutorial for SQL. Mostly preferred a video. I think a source as a video with examples in it is the most efficient way to learn. Therefore before the week1 of the database, this full tutorial of MySQL could be very useful:
https://www.youtube.com/watch?v=HXV3zeQKqGY

(And I have to say that I did not like the last part. It is better not to watch the last part which is the introduction to ERD. )

DB week2 Homework

Because of (uesr_id ) field in todo_items table don't accept a null value then We can add it directly in the query string or we can use it as a parameter.

Elaborate on RDMBS vs NoSQL

it's not a 'versus' discussion, it's about what data to put in which db.
Most (big) projects these days use both types of DB's in a single project

MySQL is useful for most of the data in all applications. Every application needs to start relational for example with entities like users, companies, subscription etc. Since most of the data we deal with is relational by nature.

NoSQL is useful for:
○ data collection without the time to properly normalize it in advance (e.g. collect log data and user activity without knowing what to do with it)
○ search engines (e.g. ElasticSearch)
○ for caching (you can put all data in a single document, skipping joins and allowing duplicate data)

To bad MongoDB has been hyped and in use for general purposes.
This leads to skipping proper database design and will give trouble on schema changes

It's easy to simply store your JS objects as JSON in Mongo but thats just as easy in Postgress or MySQL.

Some comments from people wishing they never started using MongoDB:
https://www.reddit.com/r/node/comments/8r263o/why_should_i_use_mongodb_and_not_mysql_with_node/#thing_t1_e0pfb21

Spell issue

[6.] Select the top 3 countries by population that their names start with the later ‘P’

later => letter

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.