Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

What are databases?

 
Filipe Madureira
Ranch Hand
Posts: 30
1
Chrome Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I learnt HTML, CSS, PHP, Javascript and i'm learning SQL now.

I still have a big question though. What's actually the database?!

For example, the page you see online is probably a .HTML or .PHP file, with, if present, additional .JS and .CSS files.

How do databases work? They're simply some memory that the webhost you choose gives you and lets you use to create tables and insert files? If not, how do you create one? How do you access it? How?!

I installed WAMP to emulate a real webhost and i'm currently trying to add a database to my website (just for exercise) but i have no idea where to start, given my lack in theory. I just have some files in the WWW folder which are working, but now i want to add a database and SQL code..
 
K. Tsang
Bartender
Posts: 3585
16
Android Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Since you mentioned WAMP (Windows, Apache, MySQL, PHP) consists of the full stack.

MySQL is the database. So what's the database? It's a set of files that store data (in the form of tables).

I suggest you check out books about Database Management Systems at the library to get yourself familiarize with databases in general. Some books here may give you an idea.

You may want to install the MySQL Workbench (GUI tools) or if you prefer the browser, download PHPMyAdmin or do everything in the command prompt.

For more information about MySQL, check out their documentation http://dev.mysql.com/doc/
 
Filipe Madureira
Ranch Hand
Posts: 30
1
Chrome Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you for the links.

One question, though.

Is there a good guide on how to learn using databases with WAMP? i can't find good tutorials.

I attended for a semester databases course, but we spent most of the time drawing and making entity-relationship graphics. Not the real thing, and i'm still as confused as before, even if i know how the entities relate with themselves.
 
K. Tsang
Bartender
Posts: 3585
16
Android Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ah the entity-relationship diagram. Well given such diagram, understand how one entity (really a table) relate to another will allow you to see the "design" of the database system/application.

Given your blankness, start research on the following database-related terminology:
* entity
* relationship
* entity-relationship (ER) diagram
* primary key
* foreign key
* composite key
* normalization (has many forms 1NF, 2NF etc)
* table
* view
* index
* trigger
* (store) procedure
* function
 
chris webster
Bartender
Posts: 2407
33
Linux Oracle Postgres Database Python Scala
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
  • Go to an online bookstore like Amazon and search for practical introductory books on MySQL (that's the "M" in "WAMP" or "LAMP") e.g. you could try Head First SQL.
  • Buy one of these books and work through it systematically.
  • This should give you at least a basic understanding of what a database is and how to use it for simple applications.
  • Most commonly used databases (MySQL, MariaDB, PostgreSQL, Oracle etc) are based on the "relational model" i.e. all that stuff about entities, relationships, keys etc.
  • If you understand the basics of the relational model and how it is implemented by a database like MySQL, then you will find it much easier to write SQL.
  •  
    Filipe Madureira
    Ranch Hand
    Posts: 30
    1
    Chrome Java Windows
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Thank you, i will follow all of your advises. I understand the basics of the relational model (thanks to my semester course) but i think i'm missing how it is implemented.
     
    • Post Reply
    • Bookmark Topic Watch Topic
    • New Topic