
جلسه قبل به تحلیل جزئی، هر چند کوتاه درباره یک سایت خبری پرداختیم. حالا امروز میخواهیم به موضوع sql چیست، بپردازیم.
اولین نکتهای که باید بدانید این است که SQL، یک زبان برنامه نویسی میباشد اما چرا این زبان به وجود آمد با وجود اینکه ما با سیستمهای مدیریت پایگاه داده، دیتابیسهای خود را مدیریت میکنیم؟
همانطور که میدانید برنامهنویسان با زبانهایی چون سیشارپ، جاوا، سی پلاس پلاس و غیره اپلیکشینها و سایتهای خود را میسازند که اصطلاحا به آنها زبانهای برنامهنویسی میزبان یا Host language گفته میشود. از طرفی دیگر نیاز است تا DBMSها بتوانند این دادهها را مدیریت کنند. پس باید یک زبان مشترک بین زبانهای برنامه نویسی میزبان و سیستمهای مدیریت پایگاه داده وجود داشته باشد و آن زبانی نیست جز SQL.
ایده یک زبان مشترک از زمانی محقق شد که دکتر اِدگار مدلی از پایگاه داده رابطهای را معرفی کرد و او را به عنوان پدر پایگاه دادههای رابطهای نامیدند تا اینکه در سال 1974 زبانهای پرس و جو ساختار یافته متولد شدند. سرانجام در سال 1979 کمپانی IBM ایده دکتر اِدگار را توسعه داد. نهایت در سال 1986 این کمپانی نمونه اولیه SQL را معرفی کرد.
SQL بر پایه RDBMS ساخته شده است. حالا این یعنی چی؟
Relational Database Management System یا سیستم مدیریت پایگاه داده رابطهای؛ همان طور گفتیم پایه و مبنای SQL و تمام سیستمهای مدیریت پایگاه داده مانند MS SQL Server ،IBM BD2 ،Oracle ،MySQL مدل پایگاه داده رابطهای میباشد.
برای تلفظ زبان اسکیوال 2 روش وجود دارد:
برخی از افراد تمام حروف آن را به صورت جداگانه میخوانند.
برخیها با واژه سِکوئِل(sequel) از آن نام میبرند.
این نکته هم باید بدانید که پایگاه دادههای رابطهای بر پایه جدول هستند؛ یعنی برای استفاده از آنها باید با جداول کار کنیم. با استفاده از SQL میتوانید رکوردهایی را درج، به روزرسانی و یا حذف کنید. همچنین میتوانید جدولی را ایجاد و یا حذف کنید.
نکته مهم دیگری که وجود دارد، این است که sql به چگونگی ذخیرهسازی دادهها ورود نمیکند و تنها به نوع ساختار ذخیره اطلاعات مرتبط است. در واقع SQL، شکلدهی به دادهها در یک ساختار منظم برای ارتباط بهتر با سایر دادهها وجود دارد.
پس به طور کلی میتوانیم بگوییم SQL شامل قابلیتهایی زیر میباشد:
اجرای کوئریها
بازیابی دادهها از دیتابیس
وارد کردن سوابق و دادهها در دیتابیس
به روزرسانی دادههای دیتابیس
حذف دادهها از دیتابیس
ایجاد دیتابیسهای جدید
ایجاد جداول جدید
ایجاد View
کنترل سطح دسترسی جداول
تا اینجای کار با تاریخچه و خود زبان SQL آشنا شدیم؛ اما دستورات این زبان چه هستند؟
این دستورات به طور کلی به چند دسته تقسیم میشوند که هر کدام از آنها با توجه به عملکردی که دارند در گروههای مختلف تقسیمبندی شدهاند که در ادامه به شما معرفی خواهیم کرد.
دستورات کلی عبارتاند از:
Create
Select
Insert
Update
Delete
Drop
گروهبندی دستورات با توجه به عملکردشان
DDL(زبان تعریف داده): این عبارت مخفف کلمه Data Definition Language و شامل دستورات Create ،Alter و Drop میباشد.
DML(زبان تغییر داده): مخفف این عبارت است و دستوراتی چون Select ،Insert ،Update و Delete را در برمیگیرد.
DCL(زبان کنترل داده): مخفف کلمه Data Control Language و شامل دستوراتی چون Grant و Revoke میباشد.
بعد از معرفی این زبان شرکتهای مختلف تصمیم گرفتهاند با توجه به هدفی که دارند، نسخههایی با ویژگیهای مختلف طراحی کنند. اما فلسفه وجود همه آنها چیزی نبود جز: نظمدهی به دادهها و اطلاعات برای ارتباط سادهتر. برای درک این موضوع مثالی بیان میکنم.
اگر شما SQL را یک خودرو فرض کنید، هر شرکتی با توجه به سیاستها و اهدافی که دارد، میتواند خودروی خود را تولید کند. یعنی اگر ساختار اصلی تشکیلدهنده خودرو را SQL در نظر بگیریم، هر برندی میتواند تغییراتی که مد نظر دارد اعمال و آن را معرفی کند. به بیان سادهتر در ماشین بودن و کارکد آن اختلالی ایجاد نمیشود.
این سیستم مدیریت پایگاه داده متن-باز که براساس مدل رابطهای طراحی شده است در سال 1994 توسط یک شرکت سوئدی ارائه شد و کاربران بسیاری را به دلیل راحتی کار به خود جذب کرد.
این زبان که توسط Relational Software توسعه یافت، جزء اولین نرمافزارهایی بود که توانست میان پایگاههای داده ارتباط تجاری ایجاد کند.
یک سیستم مدیریت پایگاه داده قدرتمند از شرکت مایکروسافت که علاوهبر استفاده به عنوان یک دیتابیس رابطه ای و تجاری، اطلاعات مدیریت هوشمند را نیز انجام میدهد.
و غیره
یک کارشناس DBA وظیفه دارد تا از مدیریت و همچنین ذخیره درست و کارآمد دادهها، اطمینان حاصل کند چراکه اگر کاربر بتواند ترکیب دلخواه خود را با فیلترسازی شخصی دادهها بازیابی کند، ارزشمندتر است.
در این شغل، متخصص Database Migration Engineer وظیفه انتقال دادهها از دیتابیسهای مختلف به یک سرور را بر عهده دارد.
شغلی شبیه به آنالیزر با این تفاوت که متخصصان این حوزه شغلی موظف هستند دادهها را در حجم بسیار بزرگ مدیریت و آنها را با سرعت بسیار بیشتری جمع کنند.
در این شغل، متخصص وظیفه دارد تا ساخت محصولات برای مدیریت دادههای حجم بالا را ایجاد کند.
خب دوستان با sql چیست آشنا شدیم. برای شناخت بیشتر با این موضوع میتوانید از ویدئویی که در اینباره برای شما عزیزان در نظر گرفته شده است، استفاده کنید. حتما نظرات و انتقادات خود را در قسمت کامنت با ما به اشتراک بگذارید و اگر سوالی هم بود به انجمن پرسش و پاسخ درسمن مراجعه کنید. موفق باشید.


مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و ....
چقدر خوب sql چیست رو توضیح دادین....واقعا کیف کردم و میتونم بگم بی نظیر هستید همین
واقعا ویدئو و مطالب این درس خیلی برای درک بهتر و کامل مفاهیم پایگاه داده بیان شده بود.....ممنون از زحمات شما
بله ما سعی کردیم تا مطالب برای کاربران عزیز کاربردی باشه و ممنون از نظر پرانرژی شما کاربر گرامی
این درس دید خوبی به من نسبت به پایگاه داده و شناخت اون داد....دست مریزاد میگم به استاد این دوره و تیمی که دارن برای هرچه بهتر شدن تلاش میکنن
باعث خرسندی ماست که مطالب مورد پسند شما کاربر محترم واقع شده است و قطعا پیام های محبت آمیز شما، تلاش این مجموعه را برای بهبود و ارائه هر چه بهتر مطالب دو چندان میکند....موفق باشین
جلسه قبل به تحلیل جزئی، هر چند کوتاه درباره یک سایت خبری پرداختیم. حالا امروز میخواهیم به موضوع sql چیست، بپردازیم.
اولین نکتهای که باید بدانید این است که SQL، یک زبان برنامه نویسی میباشد اما چرا این زبان به وجود آمد با وجود اینکه ما با سیستمهای مدیریت پایگاه داده، دیتابیسهای خود را مدیریت میکنیم؟
همانطور که میدانید برنامهنویسان با زبانهایی چون سیشارپ، جاوا، سی پلاس پلاس و غیره اپلیکشینها و سایتهای خود را میسازند که اصطلاحا به آنها زبانهای برنامهنویسی میزبان یا Host language گفته میشود. از طرفی دیگر نیاز است تا DBMSها بتوانند این دادهها را مدیریت کنند. پس باید یک زبان مشترک بین زبانهای برنامه نویسی میزبان و سیستمهای مدیریت پایگاه داده وجود داشته باشد و آن زبانی نیست جز SQL.
ایده یک زبان مشترک از زمانی محقق شد که دکتر اِدگار مدلی از پایگاه داده رابطهای را معرفی کرد و او را به عنوان پدر پایگاه دادههای رابطهای نامیدند تا اینکه در سال 1974 زبانهای پرس و جو ساختار یافته متولد شدند. سرانجام در سال 1979 کمپانی IBM ایده دکتر اِدگار را توسعه داد. نهایت در سال 1986 این کمپانی نمونه اولیه SQL را معرفی کرد.
SQL بر پایه RDBMS ساخته شده است. حالا این یعنی چی؟
Relational Database Management System یا سیستم مدیریت پایگاه داده رابطهای؛ همان طور گفتیم پایه و مبنای SQL و تمام سیستمهای مدیریت پایگاه داده مانند MS SQL Server ،IBM BD2 ،Oracle ،MySQL مدل پایگاه داده رابطهای میباشد.
برای تلفظ زبان اسکیوال 2 روش وجود دارد:
برخی از افراد تمام حروف آن را به صورت جداگانه میخوانند.
برخیها با واژه سِکوئِل(sequel) از آن نام میبرند.
این نکته هم باید بدانید که پایگاه دادههای رابطهای بر پایه جدول هستند؛ یعنی برای استفاده از آنها باید با جداول کار کنیم. با استفاده از SQL میتوانید رکوردهایی را درج، به روزرسانی و یا حذف کنید. همچنین میتوانید جدولی را ایجاد و یا حذف کنید.
نکته مهم دیگری که وجود دارد، این است که sql به چگونگی ذخیرهسازی دادهها ورود نمیکند و تنها به نوع ساختار ذخیره اطلاعات مرتبط است. در واقع SQL، شکلدهی به دادهها در یک ساختار منظم برای ارتباط بهتر با سایر دادهها وجود دارد.
پس به طور کلی میتوانیم بگوییم SQL شامل قابلیتهایی زیر میباشد:
اجرای کوئریها
بازیابی دادهها از دیتابیس
وارد کردن سوابق و دادهها در دیتابیس
به روزرسانی دادههای دیتابیس
حذف دادهها از دیتابیس
ایجاد دیتابیسهای جدید
ایجاد جداول جدید
ایجاد View
کنترل سطح دسترسی جداول
تا اینجای کار با تاریخچه و خود زبان SQL آشنا شدیم؛ اما دستورات این زبان چه هستند؟
این دستورات به طور کلی به چند دسته تقسیم میشوند که هر کدام از آنها با توجه به عملکردی که دارند در گروههای مختلف تقسیمبندی شدهاند که در ادامه به شما معرفی خواهیم کرد.
دستورات کلی عبارتاند از:
Create
Select
Insert
Update
Delete
Drop
گروهبندی دستورات با توجه به عملکردشان
DDL(زبان تعریف داده): این عبارت مخفف کلمه Data Definition Language و شامل دستورات Create ،Alter و Drop میباشد.
DML(زبان تغییر داده): مخفف این عبارت است و دستوراتی چون Select ،Insert ،Update و Delete را در برمیگیرد.
DCL(زبان کنترل داده): مخفف کلمه Data Control Language و شامل دستوراتی چون Grant و Revoke میباشد.
بعد از معرفی این زبان شرکتهای مختلف تصمیم گرفتهاند با توجه به هدفی که دارند، نسخههایی با ویژگیهای مختلف طراحی کنند. اما فلسفه وجود همه آنها چیزی نبود جز: نظمدهی به دادهها و اطلاعات برای ارتباط سادهتر. برای درک این موضوع مثالی بیان میکنم.
اگر شما SQL را یک خودرو فرض کنید، هر شرکتی با توجه به سیاستها و اهدافی که دارد، میتواند خودروی خود را تولید کند. یعنی اگر ساختار اصلی تشکیلدهنده خودرو را SQL در نظر بگیریم، هر برندی میتواند تغییراتی که مد نظر دارد اعمال و آن را معرفی کند. به بیان سادهتر در ماشین بودن و کارکد آن اختلالی ایجاد نمیشود.
این سیستم مدیریت پایگاه داده متن-باز که براساس مدل رابطهای طراحی شده است در سال 1994 توسط یک شرکت سوئدی ارائه شد و کاربران بسیاری را به دلیل راحتی کار به خود جذب کرد.
این زبان که توسط Relational Software توسعه یافت، جزء اولین نرمافزارهایی بود که توانست میان پایگاههای داده ارتباط تجاری ایجاد کند.
یک سیستم مدیریت پایگاه داده قدرتمند از شرکت مایکروسافت که علاوهبر استفاده به عنوان یک دیتابیس رابطه ای و تجاری، اطلاعات مدیریت هوشمند را نیز انجام میدهد.
و غیره
یک کارشناس DBA وظیفه دارد تا از مدیریت و همچنین ذخیره درست و کارآمد دادهها، اطمینان حاصل کند چراکه اگر کاربر بتواند ترکیب دلخواه خود را با فیلترسازی شخصی دادهها بازیابی کند، ارزشمندتر است.
در این شغل، متخصص Database Migration Engineer وظیفه انتقال دادهها از دیتابیسهای مختلف به یک سرور را بر عهده دارد.
شغلی شبیه به آنالیزر با این تفاوت که متخصصان این حوزه شغلی موظف هستند دادهها را در حجم بسیار بزرگ مدیریت و آنها را با سرعت بسیار بیشتری جمع کنند.
در این شغل، متخصص وظیفه دارد تا ساخت محصولات برای مدیریت دادههای حجم بالا را ایجاد کند.
خب دوستان با sql چیست آشنا شدیم. برای شناخت بیشتر با این موضوع میتوانید از ویدئویی که در اینباره برای شما عزیزان در نظر گرفته شده است، استفاده کنید. حتما نظرات و انتقادات خود را در قسمت کامنت با ما به اشتراک بگذارید و اگر سوالی هم بود به انجمن پرسش و پاسخ درسمن مراجعه کنید. موفق باشید.
خیلی خوشحالیم که مطلب مورد پسند شم کاربر گرامی واقع شده است و ما هم جز این هدف دیگه ای ناریم....موفق باشین