پایگاه داده

امیرحسین کاظم‌نژاد - دانشگاه علم و صنعت ایران

نیاز به اطلاعات قبلی 

بعد از اجرای دوباره‌ی برنامه

راه‌حل:

استفاده از فایل

؟!

چرا باید به جای «فایل»

 از دیتابیس استفاده کنیم؟

دیتابیس فایل
ساختار‌های پیچیده
داده‌های مرتبط
تعداد بالا
استفاده‌های هم‌زمان

دیتابیس چیست؟

برنامه‌ی کاملا مجزا

فقط ماژول

پروسس مجزا

پروسس برنامه اصلی

(Server-based)
(No server-client Architecture)

اصطلاح‌ها

DBMS 
RDBMS
DataBase
Table
Schema
Database Management System
Relational Database Management System

نصب و راه‌اندازی

$ sudo apt-get install lamp-server^
$ sudo apt-get install phpmyadmin

Linux

Windows

download & install XAMPP at http://wampserver.com/

OS X

http://goo.gl/VH5Vyz

چگونه از دیتابیس‌(ها) استفاده کنیم؟

جواب:‌

SQL
Structured Query Language

ساخت Table و Schema

Primary Key
Auto increment

A primary key is a field in a table which uniquely identifies each row/record in a database table. Primary keys must contain unique values. A primary key column cannot have NULL values.

Auto-increment allows a unique number to be generated when a new record is inserted into a table.

Structured

Query

Language

 SQL Syntax

Insert Query

INSERT INTO table_name (column1, column2, column3,...columnN)]  
VALUES (value1, value2, value3,...valueN);

.1

INSERT INTO table_name
VALUES (value1, value2, value3,...valueN);

.2

Select Query

SELECT column_name,column_name
FROM table_name;

.1

SELECT * FROM table_name;

.2

Where Clause

SELECT column1, column2, columnN 
FROM table_name
WHERE [condition]

.1

SELECT column1, column2, columnN 
FROM table_name
WHERE coulmn_name operator value

Operators

Update Query

UPDATE table_name
SET column1 = value1, column2 = value2...., columnN = valueN
WHERE [condition];

Delete Query

DELETE FROM table_name
WHERE [condition];

OrderBy Clause

SELECT column-list 
FROM table_name 
[WHERE condition] 
[ORDER BY column1, column2, .. columnN] [ASC | DESC];

Group By Clause

SELECT column1, column2
FROM table_name
WHERE [ conditions ]
GROUP BY column1, column2
ORDER BY column1, column2

Advance SQL Syntax

ساخت جدول‌های مرتبط

Foreign Key:

The relationship between 2 tables matches the Primary Key in one of the tables with a Foreign Key in the second table.

جدول‌های مرتبط

One to one
One to many
Many to many

Join Query

SELECT table1.column1, table1.column1,.., table2.column1, table2.column1,...table2.columnN
FROM table2
INNER JOIN table1
ON [condition];
Made with Slides.com