این مقاله آموزشی جهت آشنایی دانشجویان آموزش مجازی در رابطه با آموزش SQL ارائه گردیده است، امیدوار است کلاس های مجازی، آموزش های از راه دور، مقالات آموزشی، کتاب های معرفی شده و کلیه ی فعالیت های خدماتی ما برای شما عزیزان مفید واقع گردد.
درباره درس پایگاه داده
پایگاه داده به عنوان یکی از دروس تخصصی رشته مهندسی کامپیوتر از کاربردهای وسیعی در این رشته و زمینه های مرتبط برخوردار است به نحوی که گستره قابل توجهی از نرم افزارها و سیستم های کاربردی، با پایگاههای داده سروکار دارند. در سال های اخیر پایگاه داده وارد گرایش های مختلف آزمون کارشناسی ارشد رشته فناوری و اطلاعات (IT) نیز شده است.
درباره SQL Server (اس کیو ال سرور)
درباره آموزش SQL
SQL Server یکی از سیستم های مدیریت بانک های اطلاعاتی رابطه ای (Relational) است که توسط شرکت مایکروسافت ارائه شده است. SQL از مدل سرویس دهنده – سرویس گیرنده (Client/Server) تبعیت می نماید. در این مدل ، درخواست های (IN Query) سرویس گیرندگان برای سرویس دهنده ارسال و در سمت سرویس دهنده بررسی و آنالیز می گردند . در ادامه ، پردازش های مورد نیاز بر روی اطلاعات ذخیره شده در بانک های اطلاعاتی انجام و در نهایت ، نتایج برای سرویس گیرنده ارسال خواهد شد .
MS SQL Server با استفاده از مجموعه عناصری ( Components ) که به صورت هدفمند اجراء می گردند ، قادر به تامین نیازها و درخواست ها از مخازن داده (Data Storage می باشد . مخازن داده در SQL Server به دو روش زیر مدیریت می گردند :
OLTP ( برگرفته از On Line Transaction Processing System )
OLAP ( برگرفته از On Line Analytically Processing System )
در مدل OLTP، مخازن داده به صورت جداول رابطه ای که عموما” به جهت جلوگیری از تکرار و ناهمگونی اطلاعات به صورت هنجار (Normalize) درآمده اند ، سازماندهی می شوند. این نوع از بانک های اطلاعاتی برای درج و تغییر سریع اطلاعات توسط چندین کاربر بطور همزمان مناسب می باشند.
در مدل OLAP مخازن داده جهت تجزیه و تحلیل و خلاصه سازی حجم زیادی از اطلاعات سازماندهی می شوند . مخازن داده و ارتباط بین اطلاعات در این مدل توسط SQL Server مدیریت می گردد.
یکی از اهداف مهم سیستم های مدیریت بانک های اطلاعاتی ، قابلیت رشد و توسعه (Scale ability) است. MS SQL Server مجموعه ای از پتانسیل ها را به منظور تامین هدف فوق ارائه نموده است که به برخی از مهمترین آنها اشاره می گردد:
قابلیت کار با بانکهای اطلاعاتی حجیم (در حد ترابایت)
قابلیت دسترسی هزاران کاربر بطور همزمان به بانک اطلاعاتی
قابلیت خود سازگاری (Self Compatibility) . با استفاده از ویژگی فوق ، منابع مورد نیاز هر کاربر (نظیر حافظه ، فضای دیسک و …) به محض اتصال به سرور (Log in) به صورت اتوماتیک به وی تخصیص داده می شود و پس از Log off، منابع اختصاص یافته به منظور استفاده سایر کاربران آزاد می شوند.
قابلیت اعتماد و در دسترس بودن (Reliability) . با استفاده از ویژگی فوق می توان بسیاری از فعالیت های مدیریتی را بدون توقف سرور انجام داد (نظیر Backup).
برخورداری از سطوح امنیتی بالا . بدین منظور اعتبار سنجی کاربران توسط SQL با اعتبار سنجی ویندوز تجمیع می گردد . در چنین مواردی ، ضرورتی به تعریف کاربر در MS SQL نخواهد بود و اعتبار سنجی وی توسط ویندوز انجام خواهد شد .
پشتیبانی از حجم بالائی از حافظه در سرور (در نسخه ۲۰۰۰ تا ۶۴ گیگابایت و در نسخه ۲۰۰۵ متناسب با حافظه ای که سیستم عامل از آن حمایت می نماید ).
استفاده از چندین پردازنده به صورت موازی (در نسخه ۲۰۰۰ تا ۳۲ پردازنده همزمان و در نسخه ۲۰۰۵ محدودیتی وجود ندارد )
پشتیبانی از لایه ها و سوکت های امنیتی نظیر SSL، خصوصا” جهت استفاده در وب.
یکی دیگر از ویژگی های مهم سیستم های مدیریت بانک های اطلاعاتی، ایجاد تسهیلات لازم به منظور مدیریت بانک های اطلاعاتی است. SQL Server با ارائه برنامه های جانبی نظیر Enterprise Manager استفاده و مدیریت بانک های اطلاعاتی را آسان نموده است.
SQL Server بطور اتوماتیک در Active Directory ثبت می شود (Register)، بنابراین کاربران شبکه به راحتی می توانند آن را در Active Directory جستجو و در صورت نیاز به آن متصل شوند . همچنین، MS SQL Server توسط IIS پشتیبانی می گردد و مرورگرها با استفاده از پروتکل HTTP قابلیت استفاده از آن را خواهند داشت.
از جمله نکات مهم در خصوص MS SQL Server، اجرای آن به صورت یک سرویس است. بنابراین، در صورتی که کاربری به ماشینی که MS SQL Server بر روی آن اجراء شده است، Log on نکرده باشد ، همچنان سیستم در دسترس کاربران خواهد بود. علاوه بر این، می توان از سیستم مانیتورینگ ویندوز به منظور مانیتورینگ SQL Server استفاده نمود.
یکی از مهمترین و شاخص ترین ویژگی های MS SQL Server که از نسخه ۲۰۰۰ در آن ایجاد شده است ، امکان نصب چندین نسخه SQL بر روی یک ماشین می باشد (Multi Instance) ، بطوریکه هر یک از نسخه ها فایل های باینری مخصوص به خود را داشته و بطور جداگانه مدیریت و راهبری می گردند ، ولی تمام نسخه ها بطور همزمان اجرا می شوند (دقیقا” مشابه این است که چندین نسخه بر روی چندین کامپیوتر نصب شده باشد ).
با توجه به این که نسخه (Instance) قراردادی فاقد نام است و سایر نسخه ها می بایست دارای نام باشند به آنها نسخه های دارای نام (Named Instance) می گویند . نسخه های دارای نام را می توان هر زمان نصب نمود (قبل و یا بعد از نسخه قراردادی). ابزارهای همراه SQL نظیر SQL Enterprise Manager یک مرتبه نصب خواهند شد و در تمامی نسخه های SQL به صورت مشترک استفاده خواهند شد.
تاریخچه اس کیو ال (SQL)
در مدل رابطهای دادهها، زبان ساختارمند پرسشها یا اسکیوال یا سیکوال (Structured Query Language – SQL) زبانی است سطح بالا مبتنی بر زبان سطح پایین و ریاضی جبر رابطهای که برای ایجاد، تغییر، و بازیابی دادهها و نیز عملیات بر روی آنها بهکار میرود.
زبان SQL به سمت مدل شیگرا – رابطهای نیز پیشرفت کردهاست.
منشا اصلی سیکوال به مقاله سال ۱۹۷۰ ادگار کاد تحت عنوان « مدل رابطهای دادهها برای بانکهای بزرگ دادههای اشتراکی » باز میگردد. در دهه ی ۷۰ گروهی از شرکت آیبیام در شهر سان خوزه بر روی سیستم پایگاه دادههای سیستم آر بدون توجه به این مقاله کار میکردند و زبان SEQUEL را به منظور عملیات و بازیابی اطلاعات ذخیره شده در سیستم آر ایجاد کردند. اگر چه اسکیوال ناشی از تلاشهای کاد بود اما دونالد چامبرلین و ریموند بویس به عنوان طراحان زبان SEQUEL شناخته میشوند
سمینارهایی در زمینه فناوری بانک اطلاعاتی و مباحثاتی در مورد مزایای مدل رابطهای جدید برگزار گردید. تا ۱۹۷۶ مشخص بود که آیبیام که طرفدار جدی فناوری بانک اطلاعاتی رابطهای بوده، توجه زیادی نسبت به زبان سیکوال دارد. تبلیغات در زمینه سیستم آر باعث جذب گروهی از مهندسین در منلو پارک در کالیفرنیا گردید. این گروه به این نتیجه رسیدند که تحقیقات آیبیام منجر به یک بازار تجاری برای بانکهای اطلاعاتی رابطهای خواهد گردید.
در ۱۹۷۷ این گروه شرکتی بنام اینک (Inc) و رلیشنال سافتویر (Relational Software) تأسیس نمودند تا یک سامانه مدیریت پایگاههای داده رابطهای بر اساس سیکوال بسازند. محصولی بنام اوراکل در ۱۹۷۹ عرضه گردید، و اولین سامانه مدیریت پایگاه داده رابطهای بوجود آمد. به این ترتیب محصول اوراکل باعث گردید اولین محصول آیبیام برای مدت ۲ سال در بازار دچار رکود باشد. این محصول بر روی مینی کامپیوترهای وکس دیجیتال (VAx Digital) اجرا میشد که خیلی از کامپیوترهای بزرگ آیبیام ارزانتر بودند.
امروزه این شرکت با نام اوراکل اولین فروشنده سیستمهای مدیریت بانک اطلاعاتی رابطهای است. استادان آزمایشگاههای کامپیوتر در دانشگاه برکلی کالیفرنیا نیز در نیمه دهه ۱۹۷۰ مشغول تحقیق در زمینه بانکهای اطلاعاتی رابطهای بودن (مانند تیم تحقیق آیبیام)، گروه فوق نیز یک نمونه از سامانه مدیریت پایگاه داده رابطهای ایجاد نمودند و سیستم خود را اینگرس (Ingres) نام نهادند.
پروژه اینگرس شامل یک زبان پرسوجو بنام QUEL بود، اگر چه از سیکوال خیلی ساخت یافته تر بود، اما شباهت آن به زبان انگلیسی کمتر بود.
در حالیکه اوراکل و اینگرسبرای ارائه محصولات تجاری در رقابت بودند، پروژه سیستم آر شرکت آیبیام در تلاش بودهاست که یک محصو ل تجاری با نام SQL/Data system (یا SQL/DS) عرضه نماید. آیبیام موجودیت SQL/DS را در ۱۹۸۱ اعلام، و در ۱۹۸۲ شروع به عرضه محصول خود نمود. در سال ۱۹۸۳ آیبیام یک نسخه SQL/DS را برای VM/CMS (سیستمعاملی که در کامپیوتر بزرگ آیبیام غالبا استفاده شده بود)، اعلام نمود.
همچنین در سال ۱۹۸۳ شرکت آیبیام، محصول دیبیتو را معرفی نمود که یک سامانه مدیریت پایگاه داده رابطهای برای سیستمهای بزرگ آن شرکت بود. دیبیتو تحت سیستمعامل ویاماس (سیستمعامل مراکز کامپیوتری بزرگ) اجرا میشد. اولین نسخه دیبیتو در ۱۹۸۵ عرضه گردید، و مسئولین آیبیام اعلام نمودند که این محصول یک برنامه استراتژیک برای تکنولوژی نرمافزاری آیبیام میباشد. از آن تاریخ تاکنون دیبیتو سامانه مدیریت پایگاه داده رابطهای شاخصی بوده و آیبیام از آن حمایت نموده و زبان «سیکوال دیبیتو» استاندارد عملی زبان بانک اطلاعاتی بودهاست.
استانداردها
سیکوال استاندارد (ANSI (American National Standards Institute را در سال ۱۹۸۶ و ISO (International Organization for Standardization) را در سال ۱۹۸۷ اتخاذ نمود. استانداردهای مختلفی از اسکیوال تاکنون عرضه شده که در جدول زیر بیان میکنیم:
اسکیوال-۸۷
اسکیوال-۸۹
اسکیوال-۹۲
اسکیوال:۱۹۹۹
اسکیوال:۲۰۰۳
اسکیوال:۲۰۰۵
اسکیوال:۲۰۰۸
اسکیوال:٢٠١١
حوزه و وسعت
بسیاری از اصطلاحات زبان اسکیوال تحت استاندارد بینالمللی بوده، و در نتیجه، از آنها شبیه بقیه زبانهای استاندارد مثل محصولات شرکت اوراکل PL/SQL ]۲[ یا Sybase و SQL PL (مدل رویهای) از شرکت آیبیام میباشد.
اسکیوال برای کارهای ویژه و محدودی (گزارش گیری از دادهها در پایگاه دادههای رابطهای) طراحی شدهاست. بر خلاف زبانهای دستوری مثل بیسیک یا سی که برای حل مسائل طراحی شده، SQL زبانی بر پایه اعلان است. زبانهای توسعه یافتهای مثل PL/SQL به دنبال کامل کردن زبان به هدف ایجاد زبان برنامه نویسی با حفظ مزیتهای SQL میباشد. شیوه دیگر کار این است که به کدهای زبان برنامه نویسی اجازه دسترسی به پایگاه داده به کمک دستورات SQL داده شود مثلاً PostgreSQL به توابعش اجازه میدهد که درون کدهای Perl، Tcl و C نوشته شوند. گاهی به شوخی گفته میشود که SQL نه ساخت یافتهاست، نه محدود به گزارش گیریها و اصلاً یک زبان نیست!
واژههای کلیدی آموزش sql
واژههای کلیدی اسکیوال SQL به گروههای مختلفی تقسیم میگردد، در زیر به برخی از آنها اشاره میکنیم آنهایی که آشنا تر هستند را تنها با یک مثال شرح میدهیم:
دستور بازیابی دادهها: SELECT
دستورات عملیات دادهها: INSERT ،UPDATE ،MERGE ،TRUNCAT ، DELETE
دستورات تراکنش دادهها: COMMIT و ROLLBACK
دستورات تعریف دادهها: CREATE وDROP
دستورات کنترل دادهها: GRANT و REVOKE
دستور بازیابی دادهها
دستور SELECT جهت بازیابی برشی سطری از یک یا چند جدول به کار میرود. این دستور پرکاربردترین دستور DML میباشد و برای گزارش گیریهای موثر مورد استفاده قرار میگیرد. ساختمان این دستور میتواند از اجزای زیر تشکیل شده باشد:
FROM: مشخص کردن جداول و نحوه اتصال آنها به هم.
WHERE: انتخاب سطرهایی با شرایط خاص.
GROUP BY: ترکیب سطرها با مقادیر مربوط به مجموعهای از سطرهای کوچکتر.
HAVING: مشخص کردن سطرهای ترکیبی.
ORDER BY: مشخص کردن اینکه کدام ستونها برای مرتب کردن دادهها به کار میرود.
JOIN یا INNER JOIN: برای اتصال دو یا چند جدول استفاده میشود و اگر بین جدولها حداقل یک مورد مشترک مشاهده شود ردیفهای دارای اشتراک را بازیابی می کند.
LEFT JOIN: تمام ردیفهای جدول سمت چپ را بازیابی میکند و از جدول سمت راست فقط ردیف هایی که مورد مشابه دارند بازیابی می شوند.
RIGHT JOIN: تمام ردیفهای جدول سمت راست را بازیابی میکند و از جدول سمت چپ فقط ردیف هایی که مورد مشابه دارند بازیابی می شوند.
FULL JOIN: اگر مورد مشابهی یافت شود تمام ردیفهای جدول سمت راست و جدول سمت چپ بازیابی می شوند.
مثال ۱) نشان دادن رکوردهای تمام کتابهای بیش 2۰۰٫۰۰ واحد قیمت. نتایج بر اساس نام کتاب مرتب میگردد. نماد ستاره(*) به معنای نشان دادن تمام ستونهای ( صفات) جدول میباشد:
SELECT * FROM books WHERE price = ۱۰۰٫۰۰
ORDER BY title
مثال ۲) این مسئله نحوه استفاده از جداول چندگانه را نشان میدهد. bk و ba نام مستعار جداول میباشد. در این مثال تعداد مولفان مختلف هر کتاب را نشان داده میشود:
SELECT bk.title, COUNT(*) AS Authors
FROM books AS bk, book_authors AS ba
WHERE bk.book_number = ba.book_number
GROUP BY bk.title
مثال ۳) نشان دادن اتصال دو جدول books و customers که فقط ردیفهای دارای اشتراک بازیابی شوند و به ترتیب نام فامیل مشتری ها: ( pid شماره مخصوص هر مشتری است)
SELECT * FROM books JOIN customers
ON books.pid = customers.pid
ORDER BY customers.lastName
مثال 4) این یک مثال کامل تر با استفاده از توابع تجمعی است. نام تهیه کنندگانی که قطعه تولید می کنند که وزنش از میانگین وزن همه قطعات سیز بیشتر است را بازگردانید؟
SELECT sname
FROM S,SP,P
WHERE S.s# = SP.s# AND
P.p#= SP.p# AND
((Weight>(SELECT SVG (weight
FROM P
WHERE color=’green’
دستورات عملیات روی دادهها
این دستورات به اختصار (DML ( Data Manipulation Language گفته میشود و شامل دستوراتی همچون زیر است:
INSERT: اضافه کردن سطرهایی (تاپلهایی) به جدول موجود.
INSERT INTO My_table (field1, field2, field3) VALUES (‘test’, ‘N’, NULL)
UPDATE: جهت تغییر مقادیر سطرهای موجود جدول.
UPDATE My_table SET field1 = ‘updated value’ WHERE field2 = ‘N’;
MERGE: ترکیب کردن دادهها در جداول چندگانه. این دستور جدید در SQL:۲۰۰۳ اضافه شدهاست، پیش از این پایگاه دادهها از دستور UPSERT استفاده میکردند.
TRUNCAT: تمام دادههای جدول را حذف میکند (از دستورات غیر استاندارد اما پر کاربرد SQL میباشد)
DELETE: حذف سطرهایی از جدول موجود.
DELETE FROM My_table WHERE field2 = ‘N
دستورات تراکنش دادهها در اموزش SQL
START TRANSACTION (BEGIN WORK): جهت آغاز یک تراکنش پایگاه داده به کار میرود تا کنترل کند که تراکنش یا به پایان برسد یا اصلاً بی تأثیر باشد.
COMMIT : با عث میشود که تغییرات درون تراكنش به طور دائمی ثبت گردد.
ROLLBACK : باعث میشود که تغییرات از آخرین COMMIT یا ROLLBACK دور انداخته شود، در نتیجه وضعیت دادهها به قبل از درخواست تغییرات آنها بر میگردد.
این دو دستور در کنار هم برای کنترل و قفل گذاری به کار میرود و هنگام خروج از تراکنش این کنترل و قفل گذاری از بین میرود.
مثال 5)
START TRANSACTION
UPDATE inventory SET quantity = quantity – ۳ WHERE item = ‘pants
COMMIT
دستورات تعریف دادهها
دومین دسته دستورات آموزش SQL Server (اسیکوال) دستورات تعریف دادهها یا (DDL (Data Definition Language میباشد. این دستورات به کاربر اجازه تعریف جداول جدید و اجزای آنها را میدهد. بیشتر SQL های تجاری دستوراتی با این خصوصیات را دارند. مهمترین گزینههای پایهای DDL دستورات زیر است:
CREATE: ایجاد یک شی (مثلاً یک جدول).
DROP: حذف شی تعریف شدهای در پایگاه داده.
بیشتر پایگاههای دادهها دستور ALTER را نیز دارند که اجازه تغییر یک شی موجود را به شیوههای مختلف میدهد ( مثلاً اضافه کردن یک ستون به جدول).
مثال 6:
CREATE TABLE My_table
my_field1 INT
(my_field2 VARCHAR (50
my_field3 DATE NOT NULL
( PRIMARY KEY (my_field1, my_field2
مثال 7: دستور تعریف پایگاه داده ی بانک و جدول وام ( Loan ) را ارائه دهید؟
CREATE DATABASE Bank AUTHORIZATION pupuol
CREATE TABLE Loan
L# INT NOT NULL
bname varchar(30) NOT NULL
amount numeric(20,6) NOT NULL
PRIMARY KEY (l#)
Foreign key (bname) REFERENCES Branch
ON UPDATE CASCADE,
CHECK(amount>=0));
می توان بخش CHECK را توسط زیر به طور جداگانه و خارج از تعریف جدول، تعریف کرد.
CREATE ASSERTION constraint_name
[BEFORE COMMIT | AFTER { INSERT | DELETE | UPDATE [OF ( column_name)]}
CHECK(…)
سومین دسته از دستورات از آموزش SQL دستورات کنترل داده یا (DCL (Data Control Language میباشد. این دستورات جنبههای اجازه دسترسی به دادهها را مشخص میکند و تعیین میکند کدام کاربر میتواند روی پایگاه داده عملیات انجام دهد یا کدام کاربر تنها میتواند قابلیت خواندن آنها را داشته باشد. دو دستور اصلی به قرار زیر است:
GRANT: اجازه دادن به یک یاچند کاربر برای اجرا کردن یک یا مجموعهای ازدستورات بر روی یک شی.
REVOKE: حذف یا محدود کردن قدرت اجرای کاربران.
مثال 8: همه ی اقلام موجود در جدول inventory بازیابی شود.
SELECT * FROM inventory
معایب اس کیو ال
در کاربرد عملی از SQL معایب زیر بر آن وارد است:
دستورات نحوی(syntax) آن تا حدی مشکل است به نحوی که گاهی آنرا با COBOL مقایسه میکنند.
شیوه استانداردی را برای دستورات چند تکه بزرگ ندارد.
نمونههای مختلف آنها که توسط فروشندگان مختلف ارائه میشود گاهی با هم سازگاری ندارد.
وجود برخی دستورات بلند
اشتباه گرفتن وظیفههای دستوراتی مثل UPDATE و INSERT .
محاسن اسکیو ال
ولی sql دارای محاسنی هم هست:
سازگاری با اکثر زبانهای دستوری
سازگاری با اکثر پایگاههای داده مثل SQL Server, Oracle و حتی MS ACCESS
پس از اینکه برنامه نویس این زبان را درک کرد استفاده از آن بسیار سادهاست
کاربرد در زبانهای جدید و پیشرفته
زبانهای مشابه اسکیو ال ( sql )
(IBM BS۱۲ (Business System ۱۲
Tutorial D
TQL Proposal
HQL ( بر پایه ابزار JAVA
OSQL (برپایه ابزارهای شی گرای PHP برای عملیات و گزارش گیری)
Quel (در سال ۱۹۷۴ در دانشگاه برکلی ایجاد شد)
ODMG) Object Data Management Group)
linQ
آموزش sql: مقدمه
ویرایش های مختلف SQL Server 2005
مقایسه امکانات هر یک از ویرایش ها
اصول RDBMS
اشیای پایگاه داده
انواع داده
مفاهیم دیگر پایگاه داده
آموزش ابزار کار
SQL Server Books Online
SQL Server Computer Manager
SQL Server Management Workbench
Import/Export SQL Server Integration Services (SSIS)
The Database Engine Tuning Advisor
The Report Manager
The Bulk Copy Program (bcp)
Profiler
sqlcmd
آموزش دستورات اولیه Transact-SQL زبان پرس و جوی ساخت یافته
درج داده ها ( Select )
حذف داده ها ( Insert )
به روز رسانی داده ها ( Update )
توابع تجمعی
گروه بندی نتیجه ی پرس و جو
آموزش پیوند جدول ها ( Join )
عملگر پیوند طبیعی ( Natural Join )
عملگر پیوند شرطی ( Theta Join )
عملگر پیوند درونی ( Inner Join )
عملگر پیوند عبوری (ضرب کارتزین) ( Cross Join )
عملگر نیم پیوند ( Semi Join )
عملگر پیوند بیرونی ( Outer Join )
عملگر پیوند بیرونی راست ( Right Outer Join )
عملگر پیوند بیرونی چپ ( Left Outer Join )
عملگر پیوند بیرونی کامل ( Full Outer Join )
Union
آموزش ایجاد و تغییر جداول
نام اشیاء در SQL Server
نام الگو (Schema Name )
تعریف جدول ( Create )
تغییر در جداول ( Alter )
حذف صفات و جداول( Drop )
SQL Management Console
آموزش قیود ( Constraints )
قیود موجودیت ( Entity )
قیود دامنه ( Domain)
قیود یکپارچگی دامنه (Referential )
آموزش اضافه کردن جزئیات بیشتر به Query ها
زیر Query های تودرتو
زیر Query های وابسته (Correlated)
جداول مشتق
استفاده از عملگر Exists
بهینه کردن عملکرد Query
آموزش نرمال بودن، نرمال سازی و دیگر مسائل اولیه طراحی
فرم نرمال اول
فرم نرمال دوم
فرم نرمال سوم
فرم های نرمال دیگر
ایجاد جدول به صورت عملی در SQL Server و نرمال کردن آن
آموزش ساختارهای ذخیره سازی و شاخص ها در SQL Server
ذخیره سازی در SQL Server
بانک اطلاعاتی
انواع شاخص ها
شاخص های xml
آموزش دیدگاه ها ( Views )
کاهش پیچیدگی ظاهری برای کاربر نهایی
دیدگاه ساده
دیدگاه های پیچیده تر
ویرایش دیدگاه ها در Management Studio
حفاظت از کد، رمز نگاری دیدگاه ها
سلام ! واقعلا عالی توضیح دادی ! ممنون بایت توضیحت !
وقتی میخوام sql 2014 را نصب کنم به من error زیرا میدهد علتش چیه؟
Cannot registery
\key:softwere\microsaft\microsaft\softwhere
با سلام. دوست عزیز شما میتونید برنامه نصب اس کیو ال رو run as admin کنید