יום שלישי, 26 באפריל 2011

שאילתות SQL

כאשר מתכוונים לשאילתה בשפת SQL מתכוונים בעצן לפעולות אשר מצמצמות,מחשבות ,מטילות טבלת נתונים.
מטרת השאילתה היא להציג לשנות  ולנתח נתונים בדרכים שונות.
השאליתה הכי נפוצה זוהיא שאילתת הבחירה SELECT שאילתה זו מקבלת תוצאות מטבלאות על פי קריטריון סינון ששאלנו בשאילתה.
נכון שפלט של שאליתה מוצג כטבלה אך ישנם הבדלים בין טבלה לשאילתה: הנתונים בטבלה נשמרים גם לאחר סגירתה אך הנתונים בשאילתה אינם נשמרים.

מבנה של שאליתת בחירה(SELECT):

SELECT - רשימת השדות שיוצגו בטבלת השאילתה.
FROM -רשימת הטבלאות בהן נמצאים הנתונים.
WHERE- תנאים לוגיים שיקבעו אילו רשומות ישלפו מהטבלה.
GROUP BY- השדות לפיהן מבצעים הקבצה של הרשומות  המוצגות.
HAVING- תנאי לוגי ה קובע אילו רשומות יוצגו.
ORDER BY - השדות לפיהן יתבצע מיון הרשומות המוצגות.

בסוף השאילתה תמיד מופיע הסימן ;

הפרמטרים ALL ו DISCINT , ברירת המחדש היא ALL , השימוש ב ALL כאשר רוצים את כל השורות ואילו השימוש ב DISCINT הוא כאשר איננו אוצים ששורות משוכפלות יחזרו על עצמן.


חישובים בשאליתות SQL :


ניתן לכלול בתוך השאילתה חשיבוים אריטמטיים בפסוקית SELCET או ב WHERE .

ניתן להגדיר שם נרדם לטבלאות, עמודות ושדות  - השימוש בשם נרדף נועד על מנת לקצר כמו כן אם ישנם שמות דומים גם לטבלאות ורשומות ניתן להבחין בניהם ע"י קיצור השם.
להגדרת שם נרדף נשתמש ב AS.

יום ראשון, 24 באפריל 2011

מערכות לניהול בסיסי נתונים

בעבר הלא רחוק מערכת בסיסי נתונים היתה מערכת מאוד פשוטה, המערכות עבדו בשיטה הנקראת FMS - כלומר מערכת לניהול קבצים אך עם הזמן הדרישות מהערכת הפכו להיות מורכבות מדי בשביל מערכת לניהול קבצים פשוטה ולכן עברו למערכות לניהול בסיסי נתונים DBMS .
טכנולוגיה זו פותחה על מנת ליצור גישה קלה ונוחה לנתונים, הטכנולוגיה בעצם מתווכת בין שכבת היישום לשכבת הנתונים.

בסיס נתונים 
אוסף של נתונים הקשורים בניהם בקשרים לוגיים המאפשר שיתוף נתונם בין יישומים שונים בנוסף מכיל בסיס הנתונים גם נתונים המתארים את בסיס הנתונים עצמו.

המודל הטבלאי/רציונלי
 המודל מבוסס על קונספציות מתמטיות כיאה למודל שפותח ע"י מתמטקאי . המודל פותח בשנות ה-60 ותפס תאוצה בשנות ה- 80.
- המודל מבוסס על מודל הטבלה בו הנתונים מאוחסנים.
- כל טבלה מורכבת מרשומות(שורות) ושדות(עמודות).
- לכל טבלה יש שם ייחודי המזהה אותה, ככה המנגנון לזיהוי נתונים מאתר את הטבלה "מאוחרי הקלעים" של המערכת.
- המודל מספק כלים לניהול יעיל של נתונים מרובים, מכיוון שהטבלאות יכולות להכיל גם מידע על בסיס הנתונים עצמו כמו כן יש לציין שכל דבר במודל זה יכול להתאכסן בטבלאות.

מילון נתונים
מכיל את רשימת הטבלאות שבבסיס הנתונים כמו כן מכיל מצביע לכל טבלה .
RDBMS(ניתן הסבר בהמשך) פעול ככה שכאשר נשאלת שאילתא ה RDBMS מחפש מחפש במילון הנתונים את תוצאות השאילתא ומחזיר טבלה .

RDBMS

הRDBMS  בעיקרון היא מערכת לניהול בסיסי נתונים טבלאיים , בעצם התוכנה ייעודית ומאפשרת ניהול בסיס הנתונים הטבלאי , המערכת תומכת במגוון רחב של יישומים.
היתרון הגדול שלה היא האפשרות היעילה ווהנוחה לגישה לנתונים אשר מאוחסנים בטבלאות.
המערכת תומכת ב 3 פונקציות מרכזיות :

1. הגדרת הנתונים -הגדרת המבנה הלוגי וכן הגדרת המבנה הפיסי.
2. טיפול בנתונים - גישה אל הנתונים , איתור מידע , עידכון והוספה.
3. אילוצי אמינות- חלקם ברמת הטבלה וחלקם ברמת הקשר.

בשונה ממערכות לניהול קבצים (FMS) ה- RDBMS מסוגלת לאחסן את הטבלאות בקובץ פיסי אחד כלומר קיים נתק בין המושג הלוגי טבלה לבין המושג הפיסי קובץ.
במילים אחרות ופשוטות המערכת לניהול קבצים כל טבלה היא בעצם קובץ ואילו במערכת לניהול בסיס נתונים - בסיס הנתונים הוא קובץ אחד שמכיל המון טבלאות.

שירותים במערכת לניהול בסיס הנתונים

1. איחסון , עידכון ושליפת נתונים. זהו השירות הבסיסי והפרימיטיבי ביותר במערכת לניהול בסיס נתונים .
המערכת מאפשרת להשתמש בנתונים ללא צורך בידע על שיטת איחסונם , לדוגמה ניקח את גוגל איננו יודעים באיזה מודל מאוחסנים הנתונים בשרתים של גוגל אך אנו יכולים להשתמש על מנת לשאול  שאילתות (חיפוש) ולקבל תשובות (תוצאות חיפוש).
2. ניהול קטלוג המערכת-   זהוא אחד המאפיינים הבולטים המערכת RDBMS .
הנה כמה דוגמאות לסוגי הגדרות המנוהלות בקטלוג:

* רשימת טבלאות .
* רשימת השדות בכל טבלה ומאפייניו.
* אינדקסים לכל טבלה.
* קשרים בין הטבלאות.
* ערכים מותרים לנתונים.
*משתמשים מורשים והרשאותיהם.

3. תמיכה בעיבוד תנועות ועידכון בסביבה מרובת משתמשים , תוך כדיי שמירה על שלמות הנתונים וניהול הרשאות המשתמשים.

4. אבטחת נתונים- הגדרת הרשאות.



יום שבת, 16 באפריל 2011

טבלאות נתונים:



מבנה נתונים בדרך כלל מכיל טבלה אחת או יותר . כל טבלה מזוהה ע"י שם (לדוגמה : לקוחות , הזמנות וכ'ו).
טבלאות מכילות רשומות(שורות) עם נתונים.
להלן דוגמא לטבלה בשם "PERSONS ":
P_Id
LastName
FirstName
Address
City
1
Hansen
Ola
Timoteivn 10
Sandnes
2
Svendson
Tove
Borgvn 23
Sandnes
3
Pettersen
Kari
Storgt 20
Stavanger
הטבלה למעלה מכילה 3 רשומות (אחד לכל בן אדם) ו 5 טורים (P_ID,LASTNAME,FIRSTNAME, ADDRESS, CITY ).
הצהרות SQL :
רוב הפעולות שתצטרך לבצע על  בסיס  נתונים  מטופלים בהצהרות SQL .
ההצהרה SQL הבאה יתבחר את כל הרשומות בטבלת PRESONS

SELECT * FROM Persons
במדריך זה אנו נלמד אותך על כל ההבדלים בין ההצהרות ד SQL השונות.
תמיד תזכור ש..

·         SQL היא לא CASE SENSITIVE


נקודה ופסיק אחרי הצהרת SQL  ?

ישנם מערכות בסיסי נתונים אשר דורשות נקודה פסיק בסוף כל הצהרת SQL.
נקודה פסיק היא הסטאנדרט להפריד כל הצהרת SQL במערכות בסיסי נתונים אשר מאשרות יותר מהצהרה אחת ליישום באותה קריאה לשרת.
אנו משתמשים ב אקסס של מיקרוסופט ו SQL SERVER 2000 ואנו לא נצטרך לשים נקודה פסיק אחרי כל הצהרת SQL אבל ישנם מערכות בסיסי נתונים הדורשות זאת.


SQL DML  ו DDL

SQL יכול להתחלק ל 2 חלקים :שפת  תיפעול הנתונים (DML )  ושפת הגדרת הנתונים (DDL  ).
השאילתה ופקודות העידכון הם מהחלק  של ה DML ב SQL.

  • SELECT מחלץ נתון מבסיס הנתונים
  • UPDATE מעדכן נתונים
  • DELETE מוחק נתונים
  • INSERT INTO הכנסת נתונים חדשים-
החלק של ה DDL ב שפת ה SQL מתיר לטבלאות נתונים להיווצר או להימחק . כמו כן הוא מגדיר מפתחות , קישורים ספיציפים בין הטבלאות , ומטיל אילוצים בין הטבלאות .להלן הצהרות הDDL הכי חשובים בשפת ה SQL:
  • CREATE DATABASE יוצר בסיס נתונים
  • ALTER DATABASE מעדכן בסיס נתונים
  • CREATE TABLE יוצר טבלה
  • ALTER TABLE מעדכן טבלה
  • DROP TABLE מוחק טבלה
  • CREATE INDEX יוצר מפתח
  • DROP INDEX מוחק מפתח

SQL - מבוא


SQL  היא סטאנדרט לשפת נגישות לנתונים.

המדריך לSQL  שלנו ילמד אותך איך להשתמש ב SQL כדיי לגשת ולתפעל מידע ב MYSQL, SQL SERVER  ,  ACCESS, ORACLE, SYBASE,   DB2 , ועוד מערכות לבסיסי נתונים.


מה זה SQL  ?

·         ראשי תיבות של SQL  הן STRUCTURED QUERY LANGUAGE
·         SQL   נותן לך גישה לתיפעול בסיסי נתונים
·         SQL  הוא תקן של ANSI

מה  SQL  עושה?
·         SQL  שואל שאילתות לגביי בסיס נתונים.
·         SQL יכול להחזיר מידע מבסיס נתונים.
·         SQL יכול להכניס רשומות לבסיס נתונים.
·         SQL  יכול לעדכן רשומות בבסיס נתונים.
·         SQL  יכול למחוק רשומות מבסיסי נתונים.
·         SQL  יכול ליצור בסיס נתונים חדש.
·         SQL  יכול ליצור טבלה חדשה בבסיס נתונים.
·         SQL  יכול לתת תצוגה של בסיס נתונים.
·         SQL   יכול ליצור תהליכים בבסיסי נתונים.
·         SQL יכול לקבוע הרשאות בטבלאות,תהליכים ותצוגות.

SQL  הוא תו תקן אבל...

למרות שSQL  הוא תקן של ANSI   ישנם הרבה גרסאות שונות של שפת SQL .
אולם בשביל להיות תואם עם התקן של ANSI ,כולם תומכים לפחות בפקודות העיקריות (כמו SELECT, UPDATE,DELETE וכו') בצורה דומה.

שימוש ב SQL לבניית אתרים:

על מנת לבנות אתר אינטרנט אשר מציג מידע כלשהוא מבסיס נתונים אתה תצטרך את הכלים הבאים:
·         RDMBS- תוכנת בסיס נתונים ( כגון: MS ACCESS, SQL SERVER, MYSQL )
·         שפת סקריפטים צד שרת למשל PHP.
·         SQL.
·         HTM L/CSS
RDBMS:

RDBMS הוא הבסיס  לSQL ולכל מערכת בסיס נתונים מודרנית אחרת כמו MS SQL , ORACLE , ACCESS וכו'.
המידע ב RDBMS מאוכסן בבסיס נתונים הנקרא טבלאות.
טבלה היא אוסף של ערכיי  מידע קשור  המורכב משורות וטורים.