مستر کد
mrcode.wikibix.ir

برنامه نویسی پایگاه داده

نویسنده : مینا علی زاده | زمان انتشار : 09 اسفند 1399 ساعت 01:08

جهت انجام پروژه های دانشجویی و یا تمرین‌های برنامه نویسی رشته کامپیوتر میتوانید به آی دی تلگرام زیر پیام دهید

@AlirezaSepand



یکی از موضوعات بسیار مهم و کاربردی در دنیای کامپیوتر، موضوع پایگاه داده می باشد. حتما با موضوع DataBase آشنا شده اید و با آن کار کرده اید. همانطور که می دانید، به وسیله پایگاه داده و زبان های برنامه نویسی پایگاه داده می توانید اپلیکیشن‌ های کاربردی DataBase طراحی و استفاده نمایید. برای آشنایی با انواع زبان های برنامه نویسی پایگاه داده می توانید از مقاله بهرهمند شوید.

پایگاه داده چیست؟

Database به مجموعه ای از اطلاعات سازمان یافته گفته می شود که طبق یک ترتیب و قوائد مشخص در کنار همدیگر نگهداری می شوند. به طور کلی به پایگاه داده محلی گفته می شود که برای ذخیره سازی اطلاعات مربوط به یک نرم افزار، وب سایت و… مورد استفاده قرار می گیرد. شما با استفاده از Database می توانید تمام اطلاعات خود را به صورت دقیق با نظم ذخیره نمایید و پس از آن در کوتاه ترین زمان و به راحتی با آن ها دسترسی پیدا کنید. دیگر مزایا دیتابیس که در اختیار کاربران قرار می دهد به صورت زیر می باشد.

  • استقلال اطلاعات
  • حذف فرآیندهای تکراری
  • افزایش امنیت
  • امکان پشتیبان گیری از داده‌ ها
  • و …

اصطلاحات و مفاهیم تخصصی Database

تعریف مجتمع در دیتابیس

به یک ساختار مشخص یا کل داده‌ های موجود در محیط عملیاتی مجتمع گفته می شود.

تعریف افزونگی در دیتابیس

به تکرار بی رویه داده ها افزونگی گفته می شود که دارای اشکالاتی همچون، افزایش مصرف حافظه، کاهش سرعت و بروزرسانی می باشد.

داده های پایدار در دیتابیس

نام دیگر داده های پایدار، مانا می باشد که به داده‌ هایی گفته می شود که به صورت دائمی بر روی رسانه ها‌ی ذخیره ‌سازی ذخیره می شوند.

داده (Data)

داده ها در Database به مفاهیم، معلومات، وقایع و پدیده‌ ها گفته می شود که به وسیله مشاهده یا تحقیق ایجاد می شوند.

اطلاعات (Information)

اطلاعات موجود در دیتابیس مفهومی می باشند که پس از پردازش بر روی داده، به شکل داده جدید ذخیره می شوند.

موجودیت (Entity)

موجودیت به فرد، شی یا پدیده‌ ای گفته می شود که اطلاعات درباره آن جمع ‌آوری  می شود.

صفت خاصه (attribute)

صفت خاصه به صفتی گفته می شود که یک موجودیت را از موجودیت دیگر جدا می کند.

جدول (Table)

جداول در Database، قسمت هایی می باشند که اطلاعات در آن ها قرار می گیرد. جدول هایی که در طراحی سایت مورد استفاده قرار می گیرد به صورت زیر می باشند.

  • جدولی برای کاربران سایت
  • جدولی برای مطالب ارسالی در سایت
  • جدولی برای محصولات سایت
  • جدولی برای نظرات کاربران
  • جدولی برای ثبت سفارشات
  • و…

ستون (Column)

یکی از قسمت های موجود در جدول، ستون ها می باشند که تعداد آن ها بسته به مقادیر اطلاعات شما متفاوت می باشد و در طراحی سایت دارای نام های مختلفی می باشند که در زیر به طور مثال برای شما معرفی می شوند.

  • ستون نام محصولات
  • ستون تاریخ انتشار محصولات
  • ستون تعداد خریداران محصولات
  • ستون قیمت محصولات
  • ستون دسته بندی محصولات
  • و…

سطر (Row)

جدول ها علاوه بر ستون ها دارای سطر های مختلفی نیز می باشد. سطرها به عناوینی که در جدول وارد می شوند گفته می شود.

انواع پایگاه داده ها

به طور کلی پایگاه داده یا دیتابیس به ۲ دسته زیر تقسیم می شوند که هر کدام دارای مدل های مختلفی می باشند. فراموش نکنید که علاوه بر انواع database ها، زبان های برنامه نویسی پایگاه داده نیز وجود دارد که در ادامه این مقاله به انواع این زبان ها می پردازیم.

پایگاه های داده SQL

SQL از عبارت Structured Query Language گرفته شده است که به آن زبان پرس ‌و جوی ساختار یافته نیز گفته می شود. اِس کیو اِل زبان استانداردی می باشد که برای دسترسی و کار با پایگاه‌ داده (database) طراحی شده است. sql در سال ۱۹۸۷ به عنوان زبان استاندارد بین المللی (ISO) معرفی شده است. برای آموختن SQL می توانید از نرم افزارهای همچون QL-Server و Access و یا اوراکل استفاده نمایید.

انواع دیتابیس sql

  • Oracle
  • Microsoft SQL Server
  • MySQL
  • DB2
  • Microsoft Access
  • PostgreSQL

ساختار sql

ساختار اِس کیو اِل به صورتی می باشد که به راحتی می تواند از اطلاعات بدون ساختار (unstructured) و نیمه‌ ساختار یافته (semi-structured) پشتیبانی کند. لازم است بگوییم که همیشه اطلاعات ساختار یافته و Metadataها بر روی دیتابیس پایگاه داده SQL Server ذخیره می شوند اما اطلاعات بدون‌ ساختار، تنها بر روی فایل ‌های سیستمی (Win32 و APIها) دخیره می شوند و برای بررسی آن ها باید از T-SQL استفاده نمایید.

انواع دستورات SQL

SQL با توجه به عملکرد و تاثیری که بر روی پایگاه داده می گذارد، دستورات مختلفی را در اختیار طراحان قرار می دهد. در این قسمت می خواهیم آن ها بپردازیم.

دستورات DDL

دستورات DDL مخفف عبارت Date Definition Language می باشند که تنها بر روی ساختار پایگاه داده تاثیر می گذارند و تاثیری بر روی محتوا ندارند. نمونه هایی از دستورات DDL

  • CREATE DATABASE: ایجاد یک پایگاه داده جدید
  • ALTER DATABASE: تغییر در پایگاه داده
  • DROP DATABASE: حذف یک پایگاه داده
  • CREATE TABLE: ایجاد یک جدول جدید
  • ALTER TABLE: تغییر یک جدول موجود
  • DROP TABLE: حذف یک جدول

دستورات DML

این گروه  از دستورات اِس کیو اِل از Data Manipulation Language گرفته شده است که برای کار با محتویات پایگاه داده طراحی شده اند و تاثیری بر روی ساختار پایگاه داده ندارند. دستورات درج، بروز رسانی یا حذف اطلاعات از یک جدول جزء این گروه دستورات هستند.

  • SELECT (بازیابی داده‌ ها از پایگاه داده)
  • INSERT (درج داده جدید در پایگاه داده)
  • UPDATE (به‌روزرسانی داده‌ های موجود در پایگاه داده)
  • DELETE (حذف داده‌ های موجود در پایگاه داده)

دستورات DCL

این دستورات مخفف Data Control Language هستند که وظیفه مدیریت و کنترل داده ها را بر عهده دارد. این دستور از ۴ دستور اصلی همچون Alter Password , Revoke ،Grant ،Create Synonym پشتیبانی می کند.

دستورات DQL

همانطور که مشخص است، این دستور مخفف عبارت Data Query Language می باشد که دارای دستورات پرس و جوی داده ها نیز می باشد. این دستور تنها از دستور Select پشتیبانی می کند. 

دستورات DDL

شاید در زمان استفاده از پایگاه داده sql، نیاز به ایجاد یا حذف یک جدول یا شی‌ء در پایگاه داده خود داشته باشید. شما با دستورات DDL پایگاه داده sql به راحتی می توانید این کار را انجام دهید. انواع نمونه‌های DDL به صورت زیر می باشند.

  • CREATE DATABASE (ایجاد یک پایگاه داده جدید)
  • ALTER DATABASE (تغییر در پایگاه داده)
  • DROP DATABASE (حذف یک پایگاه داده)
  • CREATE TABLE (ایجاد یک جدول جدید)
  • ALTER TABLE (تغییر یک جدول موجود)
  • DROP TABLE (حذف یک جدول)

دستورات کنترلی Transaction

شما با دستورات کنترلی می توانید تراکنش بانک اطلاعاتی خود را مدیریت نمایید. این دستورات تنها از دستورات زیر پشتیبانی می کند.

  • Commit 
  • Rollback 
  • Savepoint
  • Set Transaction  

مهمترین دستورات SQL

نام دستورعملکرد
SELECTانتخاب یا استخراج داده
UPDATEبروز رسانی داده
DELETEحذف داده‌
 INSERT INTOدرج داده
CREATE DATABASEدرج یک پایگاه داده جدید
ALTER DATABASEویرایش یک پایگاه داده
CREATE TABLEایجاد یک جدول جدید
ALTER TABLEویرایش یک جدول
DROP TABLEحذف یک جدول
CREATE INDEXایجاد یک شاخص (کلید جستجو)
  DROP INDEXحذف یک شاخص

ساخت دیتابیس

با کد زیر می توانید دیتابیس بسازید.

;`mysql> CREATE DATABASE `birthdays

در صورتی که بخواهید از دیتابیس ساخته شده استفاده نمایید، از کد زیر استفاده کنید.

ایجاد جدول

برای ایجاد جدول در دیتابیس ساخته شده، می توانید از کد زیر استفاده نمایید.

) CREATE TABLE tourneys  

,(name varchar(30 

,wins real 

,best real 

size real

; (

وارد کردن اطلاعات در جدول

(INSERT INTO tourneys (name, wins, best, size 

,(‘VALUES (‘Dolly’, ‘7’, ‘245’, ‘8.5

,(‘Etta’, ‘4’, ‘283’, ‘9’) 

,(‘Irma’, ‘9’, ‘266’, ‘7’) 

,(‘Barbara’, ‘2’, ‘197’, ‘7.5’)

;(‘Gladys’, ’13’, ‘273’, ‘8’)

ما در کد بالا، ۵ اسم با نام های Dolly ،Etta ،Irma ،Barbara ،Gladys را با ویژگی هایی در ستون های wins ،best ،size وارد کرده ایم.

دستور Select

دستور select به صورت زیر می باشد.

;SELECT column_to_select FROM table_to_select WHERE certain_conditions_apply

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

  • SQL بر پایه زبان پرس و جو ساخت یافته میباشد
  • اس کیو ال به شما اجازه دستیابی و کنترل داده ها را می دهد
  • SQL یک استاندارد ANSI( انجمن استاندارد ملی آمریکا) میباشد
  • SQL می تواند درخواستهای پیوسته یک پایگاه داده را اجرا کند
  • اس کیو ال  می تواند دوباره اطلاعات را از پایگاه داده پس بگیرد
  • SQL میتواند یک رکورد شامل اطلاعات را در پایگاه داده ذخیره کند
  • SQL می تواند اطلاعات پایگاه داده را به روز رسانی کند
  • اس کیو ال میتواند هر قسمت از اطلاعات را از پایگاه داده اصلاح یا حذف کند
  • SQL می تواند یک پایگاه داده تازه بسازد
  • SQL می تواند جداول حاوی اطلاعات جدید را به پایگاه داده اضافه کند
  • اس کیو ال اجازه تنظیم جداول و شیوه دستیابی به اطلاعات و نحوه نمایش اطلاعات را میدهد
  • قابلیت کار با بانکهای اطلاعاتی حجیم (در حد ترابایت)
  • قابلیت دسترسی هزاران کاربر بطور همزمان به بانک اطلاعاتی
  • قابلیت خود سازگاری (Self Compatibility)
  • قابلیت اعتماد و در دسترس بودن (Reliability)
  • پشتیبانی از حجم بالایی از حافظه در سرور
  • استفاده از چندین پردازنده به صورت موازی
  • پشتیبانی از لایه ها و سوکت های امنیتی نظیر SSL
  • استفاده از یک برنامه پایگاه داده RDBMS
  • استفاده از یک زیان برنامه نویسی سمت سرور (server-side scripting language) مانند PHP یا ASP
  •  استفاده از SQL برای جمع آوری داده های مورد نیاز
  • استفاده از HTML و CSS

پایگاه های داده NoSQL

به دلیل نقص های sql نسبت به ذخیره سازی داده های بزرگ بدون ساختار، دیتابیس جدیدی تولید شد که به آن پایگاه داده NoSQL گفته می شود. به طور کلی دلیل تولید این Database، ذخیره سازی و کار با داده های بدون ساختار و حجیم می باشد. این پایگاه داده به جای استفاده از زبان sql، از XML و JSON استفاده می کند. دیتابیس NoSQL دارای قابلیت Schema پویا و قابل تغییر می باشد که به این قابلیت Dynamic Schema نیز گفته می شود. این دیتابیس به وسیله این قابلیت می تواند انواع مختلف داده های بدون ساختار را ذخیره نماید. دیتابیس NoSQL به دلیل اینکه نمی تواند با کوئری های پیچیده کار کند، به سختی مورد انتخاب کاربران قرار می گیرد. 

انواع مختلف NoSQL

  • دیتابیس های NoSQL کلید و مقدار
  • دیتابیس های NoSQL اسناد
  • دیتابیس های NoSQL چند ستونه
  • دیتابیس های NoSQL گرافی
  • دیتابیس های NoSQL متغیر یا چند مدله
  • NoSQL جایگزین کامل SQL نیست!

مزایای استفاده از NoSQL

  • عدم طراحی شمای (الگو) خاص برای داده ها
  • قابلیت چند بخشی شدن خودکار و تشخیص هوشمند یکپارچگی
  • افزایش سرعت در طراحی و اجرای پایگاه داده
  • وجود Cache برای افزایش سرعت بازیابی اطلاعات
  • از بین بردن محدودیت ‌های قالب های قدیمی

مقایسه پایگاه داده های SQL و NoSQL

sqlNoSQL
دارای قابلیت Notification Serviceعدم طراحی شمای (الگو) خاص برای داده ها
۵ لایه ‌ی امنیتیقابلیت چند بخشی شدن خودکار و تشخیص هوشمند یکپارچگی
ارزانافزایش سرعت در طراحی و اجرای پایگاه داده
مناسب سیستم های وینروزوجود Cache برای افزایش سرعت بازیابی اطلاعات
پیروی از ساختار جدولیاز بین بردن محدودیت ‌های قالب های قدیمی
ذخیره سازی داده های کوچک و با ساختارذخیره سازی داده های بزرگ و بدون ساختار
مقیاس پذیری دشوارپویا بودن

مشکلات متداول در طراحی پایگاه داده

در Database نقش های مختلفی همچون طراح دیتابیس (Database Designer)، مدیر پایگاه داده (Database Administrator) و برنامه نویسان پایگاه داده (Database Programmers) وجود دارد که طراحان برای ایفای آن ها نیاز به تخصص، تجربه و دانش از نحوه عملکرد DBMS‌ ها دارند. در زمان طراحی پایگاه‌ های داده ممکن است مشکلاتی ایجاد شود که متداول ‌ترین این مشکلات را در زیر برای شما آورده شده است.

  • انتخاب نامناسب DBMS با توجه هدف مورد نظر
  • طراحی نامناسب دیتابیس
  • نام گذاری ضعیف جداول
  • نداشتن مستندات
  • تست نکردن دیتابیس
  • نداشتن Primary key
  • ورود تمام اطلاعات در یک جدول
  • برقراری ارتباط نامناسب میان جداول مختلف

زبان های برنامه نویسی پایگاه داده در طراحی سایت

زبان های برنامه نویسی پایگاه داده در طراحی سایت به صورت زیر می باشند.

  • HTML
  • CSS
  • Java
  • JavaScript
  • Python
  • SQL
  • PHP
  • NET.
  • Angular

بهترین زبان های برنامه نویسی پایگاه داده ۲۰۲۰

پایتون (Python)

زبان برنامه‌ نویسی پایتون یکی از انواع زبان های برنامه نویسی پایگاه داده می باشد که به وسیله شخصی به نام خیدو فان راسوم (Guido van Rossum) در سال ۱۹۹۱ تولید و منتشر شده است. این زبان دارای نقات ضعف و قوتی می باشد که در زیر به آن ها اشاره شده است.

نقاط قوت

  • پشتیبانی از سیستم ‌ها و پلتفرم‌های متعدد 
  • مبتنی بر برنامه ‌نویسی شی‌گرا 
  • کمک به بهبود عملکرد برنامه ‌نویس 
  • مقیاس پذیری راحت پیچیده‌ترین اپلیکیشن‌ ها 
  • داشتن کتابخانه ‌های پشتیبان جامعی 

نقاط ضعف

  • مناسب نبودن برای محاسبات همراه (Mobile Computing)
  • ابتدایی بودن لایه‌ دسترسی به دیتابیس پایتون

کاربرد/ موارد استفاده

  • توسعه‌ اینترنت و وب
  • کاربردهای محاسباتی و علمی
  • رابط کاربر گرافیکی در دسکتاپ
  • اپلیکیشن‌ های کسب و کار
  • استفاده در هوش مصنوعی و یادگیری ماشین

درآمد

در ایالات متحده‌ امریکا، درآمد سالیانه ک توسعه ‌دهنده‌ پایتون حدود ۱۱۴.۳۸۳ دلار می باشد.

جاوا (Java)

می توانید یکی دیگر از زبان های برنامه نویسی پایگاه داده را جاوا  معرفی کنیم در سال ۱۹۹۶ در شرکت سان مایکروسیستمز (Sun Microsystems) به وسیله جیمز گاسلینگ (James Gosling) تولید شد.

نقاط قوت

  • یک زبان برنامه‌ نویسی شی‌گرا می باشد
  • استفاده از API برای فعالیت‌ های ارتباط با دیتابیس، شبکه ‌سازی، تجزیه XML، برنامه‌ های کمکی و …
  • ابزار قدرتمند با قابلیت متن ‌باز (open source) و توسعه‌ سریع
  • وجود تعداد بسیار زیادی از کتابخانه‌ های متن‌باز

نقاط ضعف

  • پرهزینه بودن مدیریت حافظه در جاوا 
  • عدم وجود قالب‌ها (Templates)

کاربرد/ موارد استفاده

  •  توسعه اپلیکیشن‌ های اندروید
  • اپلیکیشن‌ های وب و بیگ دیتا 

درآمد

متوسط درآمد سالیانه یک توسعه‌ دهنده‌ جاوا در ایالات متحده‌ آمریکا مبلغ ۱۰۱.۰۱۳ دلار است.

درجه سختی یادگیری

یادگیری جاوا آسان و ساده می باشد.

آر (R)

زبان برنامه ‌نویسی R تنها زبانی در بین زبان های برنامه نویسی پایگاه داده می باشد که در دانشگاه طراحی شده است. این زبان توسط افرادی با نام های رابرت جنتلمن (Robert Gentleman) و راس ایهاکا (Ross Ihaka) در ۱۹۹۲ سال تولید شده است. نسخه ابتدایی آن در سال ۱۹۹۵ و نسخه نهایی آن در سال ۲۰۰۰ به طراحان معرفی شد.

نقاط قوت

  • یک زبان تجزیه و تحلیل آماری و جامع
  • گسترش ایده های جدید
  • کدنویسی آسان
  • نرم‌ افزار متن‌باز می باشد
  • قابل تغییر بودن
  • سازگاری با مایکروسافت ویندوز و لینوکس/گنو
  • قابل اجرا بر روی سیستم‌ عامل‌ های مختلف به صورت پیوسته 

نقاط ضعف

  • کیفیت پایین بعضی از بسته ها
  • نداشتن مدیریت حافظه مناسب

کاربرد/ موارد استفاده

  • پروژه‌ های علم داده
  • محاسبات آماری
  • یادگیری ماشین

درآمد

 حقوق سالیانه یک توسعه‌ دهنده‌ بین ۹۰.۰۴۲ تا ۱۳۶.۶۱۶ دلار می باشد

درجه سختی یادگیری

دشوار

جاوا اسکریپت (JavaScript)

در سپتامبر سال ۱۹۹۵ یکی از زبان های برنامه نویسی پایگاه داده در مرورگر نت اسکیپ نویگیتور ورژن ۲.۰ (Netscape Navigator 2.0) با نام لایواسکریپت (LiveScript) تولید شد و بعدا نام آن به جاوا اسکریپت تغییر پیدا کرد.

نقاط قوت

  • سمت کاربر (client-side) و بسیار سریع بودن
  • یادگیری نسبتا آسان
  • سازگاری با دیگر برنامه ها
  • استفاده شدن در بیشتر اپلیکیشن‌ ها
  • اجرا در صفحات وب خاص

نقاط ضعف

  • تنها از وراثت یگانه (single inheritance) پشتیبانی می ‌کند
  • وجود نداشتن متد کپی یا برابری در JavaScript 
  • تفسیر شدن جاوا اسکریپت توسط مرورگرهای مختلف به شکل متفاوت

کاربرد/ موارد استفاده

  • توسعه اپلیکیشن‌ های موبایل و وب
  • توسعه‌ بازی‌ ها
  • توسعه‌ اپلیکیشن ‌های دسکتاپ

درآمد

حدوداً  ۱۱۰.۹۸۱ دلار 

درجه سختی یادگیری

آسان

سوئیفت (Swift)

سوئیفت یکی دیگر از زبان های برنامه نویسی پایگاه داده می باشد که در جولای سال ۲۰۱۰ توسط شرکت اپل تولید شده است.

نقاط قوت

  • نزدیک بودن کدهای برنامه‌ نویسی سوئیفت به زبان انگلیسی
  • خوانایی آسان
  • راحت بودن افزودن ویژگی‌ های جدید به این زبان
  • کد های کوتاه
  • مدیریت حافظه‌ خودکار

نقاط ضعف

  • ناپایدار بودن این زبان به دلیل آپدیت‌ های مداوم ورژن ‌های سوئیفت در اپل
  • محدود بودن مخزنِ (pool) توسعه‌ دهندگان

کاربرد/ موارد استفاده

  • کار با فریمورک‌ های Cocoa و Cocoa Touch
  • ساخت تمام انواع اپلیکیشن‌ های iOS

درآمد

تقریبا ۱۳۰.۸۰۱ دلار 

درجه سختی یادگیری

آسان

سی پلاس پلاس (C++)

 سی پلاس پلاس که به عنوان یکی از زبان های برنامه نویسی پایگاه داده به حساب می آید، توسط فردی به نام بی‌یارنه استراس تروپ (Bjarne Stroustrup) در سال ۱۹۸۳ تولید شده است.

نقاط قوت

  • داشتن کتابخانه و کامپایلر های بسیار زیاد
  • یادگیری آسان برای حرفه ای ها

نقاط ضعف

  • ساختار پیچیده
  • کتابخانه کوچک
  • یادیگری سخت برای مبتدی ها
  • پشتیبانی نکردن از زباله جمع ‌کن (Garbage Collection) یا اختصاص حافظه پویا (Dynamic Memory Allocation)
  • ابتدایی بودن سیستم شی‌گرا در C++ در مقایسه با دیگر زبان‌ ها 

کاربرد/ موارد استفاده

  • توسعه‌ بازی ‌ها
  • محاسبات پیشرفته و کامپایلرهای گرافیکی

درآمد

تقریبا ۱۱۳.۸۶۵ دلار در سال

درجه سختی یادگیری

دشوار

 سی شارپ (C#)

 C# (سی شارپ) علاوه بر اینکه یک زبان برنامه‌نویسی کامپیوتری می باشد، می عنوان زبان های برنامه نویسی پایگاه داده نیز به حساب می آید که  در سال ۲۰۰۱ اولین نسخه‌ آن منتشر گردید.

نقاط قوت

  • دارای ساختار مشابه زبان C
  • یکپارچه‌ شدن آسان با ویندوز
  • ادغام شدن با کتابخانه‌ .NET
  • امنیت بالا

نقاط ضعف

اجازه‌ استفاده از اشاره‌گرها در بلاک‌ های ناامن را می‌ دهد.

کاربرد/ موارد استفاده

  • توسعه‌ اپلیکیشن ‌های سازمانی چند سکویی (Enterprise Cross-Applications Development)
  • اپلیکیشن‌های وب

درآمد

بین ۶۶.۴۹۳ دلار تا ۱۰۱.۷۷۵ دلار در سال

درجه سختی یادگیری

دشوار

 پی اچ پی (PHP)

 راسموس لردوف (Rasmus Lerdorf) در سال ۱۹۹۴ یکی دیگر از زبان های برنامه نویسی پایگاه داده را با عنوان زبان PHP را تولید کرد.

نقاط قوت

  • اجرا آسان
  • یک زبان برنامه ‌نویسی شی گرا و عملیاتی (functional)
  • دارای انجمن نرم‌ا فزاری وسیع و متن ‌باز (open source)
  • دارای سیستم ابزار اتوماتیک

نقاط ضعف

  • امکان رفع اشکال در PHP کم است
  • امن نبودن

کاربرد/ موارد استفاده

  • اپلیکیشن‌ های وب
  • سیستم‌ های مدیریت محتوا
  • اپلیکیشن‌ های تجارت الکترونیک

درآمد

 ۸۴.۷۲۷ دلار در سال 

درجه سختی یادگیری

آسان

 اس کیو ال (SQL)

 SQL در سال ۱۹۷۹ توسط دی چامبرلین (D. Chamberlin) و ریموند اِف بویس (Raymond F. Boyce) تولید و منتشر شد. این زبان یکی از زبان های برنامه نویسی پایگاه داده می باشد که در بین طراحان بسیار مهم و کاربردی می باشد.

نقاط قوت

  • یک زبان Query قدرتمند است
  • برای تعداد بسیار زیادی از ردیف‌های جدول بهینه‌سازی شده است
  • برای جستجو و پرس‌وجو در میان داده‌ها از سرعت بالایی برخوردار است
  • قابلیت سازگاری و دسترسی بالایی به داده‌ها دارد
  • در بازیابی داده‌ها از چند جدول سریع است

نقاط ضعف

  • مشکل بودن برگردان داده‌ها از اشیاء (Objects) به جدول ‌های پایگاه داده
  • اجرا بر روی یک سرور
  • استفاده نکردن از پایگاه داده به دلیل قطع سرور

کاربرد/ موارد استفاده

  • استفاده شدن در تمام پایگاه‌ های داده 

درآمد

 ۸۴.۷۹۲ دلار 

درجه سختی یادگیری

آسان

زبان Go

این زبان به عنوان golang نیز شناخته شده است و در سال ۲۰۰۹ توسط رابرت گریسمر (Robert Griesmer) و راب پایک (Rob Pike) در شرکت گوگل تولید شده است.

نقاط قوت

  • بسیار پرسرعت
  • مناسب برای کدهای ماشین کامپایل
  • آسان بودن ترکیب دستورات
  • ایجاد کتابخانه‌ های استاندارد
  • یادگیری آسان
  • دارای توابع توکار سودمندی (built-in functions) برای کار با انواع داده‌ اولیه (primitive types)
  • آسان کردن روند برنامه ‌نویسی

نقاط ضعف

  • پشتیبانی ضعیف از کتابخانه
  • رابط‌ ها ضمنی هستند.
  • مدیریت وابستگی (Dependency Management) ضعیفی دارد.

کاربرد/ موارد استفاده

  • برنامه‌ های کمکی کنسول
  • اپلیکیشن‌ های GIU (رابط گرافیکی کاربری)
  • اپلیکیشن ‌های وب

درآمد

۹۴.۰۸۲ دلار در سال

درجه سختی یادگیری

دشوار

عوامل مهم در انتخاب زبان های برنامه نویسی پایگاه داده

عوامل مهم و قابل توجه در انتخاب زبان های برنامه نویسی پایگاه داده به صورت زیر می باشند.

  • زمان
  • قابلیت اطمینان
  • عملکرد

پایگاه داده در زبان برنامه نویسی آر

زبان برنامه نویسی آر به راحتی می تواند با پایگاه داده های MySql ،Oracle، سرور Sql و … متصل شود. داده ها در محیط آر به صورت یک مجموعه داده R وجود دارد که می توانید به صورت بسته ها و توابع قدرتمند از آن ها استفاده نمایید. در ادامه برای اتصال به آر از MuSql استفاده می کنیم.

بسته RMySQL

آر دارای بسته درونی به RMySQL می باشد که باعث اتصال بومی بین پایگاه داده MySql می شود. شما به وسیله کد زیر می توانید بسته RMySQL را در محیط آر نصب یا اضافه کنید.

(“install.packages(“RMySQL

اتصال آر به MySql

برای اتصال آر به پایگاه داده، باید یک شیء ایجاد نمایید تا این شیء، نام کاربری، پسورد، نام پایگاه داده و نام میزبان را به عنوان ورودی دریافت کند. برای این کار به کد زیر توجه نمایید.

 .Create a connection Object to MySQL database#

.We will connect to the sampel database named “sakila” that comes with MySql installation#

(“’mysqlconnection = dbConnect(MySQL(), user = ‘root’, password = ”, dbname = ‘sakila’ ,host = ‘localhost

.List the tables available in this database#

(dbListTables(mysqlconnection

خروجی کد بالا به صورت زیر می باشد.

[۱] “actor” “actor_info”

[۳] “address” “category”

[۵] “city” “country”

[۷] “customer” “customer_list”

[۹] “film” “film_actor”

[۱۱] “film_category” “film_list”

[۱۳] “film_text” “inventory”

[۱۵] “language” “nicer_but_slower_film_list”

[۱۷] “payment” “rental”

[۱۹] “sales_by_film_category” “sales_by_store”

[۲۱] “staff” “staff_list”

[۲۳] “store”

جستجوی جدوال

در صورتی که بخواهید جداول را در پایگاه داده MySql جستجو کنید، باید از تابع ()dbSendQuery استفاده نمایید. علاوه بر آن می توانید پرسش ایجاد و اجرا شده در MySql را به وسیله تابع ()fetch در آر بازگردانید. کد زیر که به عنوان یک فایل می باشد، به شکل یک چارچوب داده در آر ذخیره می گردد.

.Query the “actor” tables to get all the rows#

(”result = dbSendQuery(mysqlconnection, “select * from actor

.Store the result in a R data frame object. n = 5 is used to fetch first 5 rows#

(data.frame = fetch(result, n = 5

(print(data.fame

کد با در زمان اجرا به صورت زیر نمایش داده می شود.

actor_id first_name last_name last_update

۱ ۱ PENELOPE GUINESS 2006-02-15 04:34:33

۲ ۲ NICK WAHLBERG 2006-02-15 04:34:33

۳ ۳ ED CHASE 2006-02-15 04:34:33

۴ ۴ JENNIFER DAVIS 2006-02-15 04:34:33

۵ ۵ JOHNNY LOLLOBRIGIDA 2006-02-15 04:34:33

پرس و جو با بند فیلتر

(”result = dbSendQuery(mysqlconnection, “select * from actor where last_name = ‘TORN

.Fetch all the records(with n = -1) and store it as a data frame#

(data.frame = fetch(result, n = -1

(print(data

خروجی کد بالا به صورت زیر به کاربران نمایش داده می شود.

actor_id first_name last_name last_update

۱ ۱۸ DAN TORN 2006-02-15 04:34:33

۲ ۹۴ KENNETH TORN 2006-02-15 04:34:33

۳ ۱۰۲ WALTER TORN 2006-02-15 04:34:33

به روز رسانی ردیف ها در جداول

در صورت نیاز به به‌روزرسانی جداول می توانید از تابع ()dbSendQuery به صورت زیر استفاده نمایید.

(”dbSendQuery(mysqlconnection, “update mtcars set disp = 168.5 where hp = 110

پس از اجرا این کد، در خروجی داده های به‌روزرسانی شده را مشاهده خواهید کرد.

درج داده ها درون جداول

برای درج داده ها در جداول از کد زیر استفاده نمایید.

,dbSendQuery(mysqlconnection

(insert into mtcars(row_names, mpg, cyl, disp, hp, drat, wt, qsec, vs, am, gear, carb“

”(values(‘New Mazda RX4 Wag’, ۲۱, ۶, ۱۶۸.۵, ۱۱۰, ۳.۹, ۲.۸۷۵, ۱۷.۰۲, ۰, ۱, ۴, ۴

(

ایجاد جداول در MySql

برای ایجاد جداول در MySql از تابع ()dbWriteTable به صورت زیر استفاده نمایید.

.Create the connection object to the database where we want to create the table#

( ’mysqlconnection = dbConnect(MySQL(), user = ‘root’, password = ”, dbname = ‘sakila’ , host = ‘localhost

.Use the R data frame “mtcars” to create the table in MySql#

.All the rows of mtcars are taken inot MySql#

(dbWriteTable(mysqlconnection, “mtcars”, mtcars[, ], overwrite = TRUE

حذف جداول در MySql

تنها راه حذف جداول در MySql، استفاده از تابع ()dbSendQuery می باشد که باید عبارت drop table را در ان تابع قرار دهید. به کد زیر توجه کنید.

(’dbSendQuery(mysqlconnection, ‘drop table if exists mtcars

نقش زبان Back-End و Front-End در برنامه نویسی طراحی سایت

Back-End چیست؟

بک اند (Backend) با نام های برنامه نویس بک اند، بک اند کار، برنامه نویس سمت سرور، Back End developer و… معرفی شده است. شما به عنوان برنامه نویس بک اند وظیفه انجام کارها و نوشتن کدهای مربوط به پشت صحنه که قابل مشاهده نیستند را دارید. کدهایی که شما به عنوان برنامه نویس بک اند (Backend) می نویسید، به یک پایگاه داده متصل می شوند که اطلاعات مربوطه را پس از دریافت از کاربر، وارد پایگاه داده می کنند که پس از خواندن اطلاعات، آنها را نمایش می دهند. 

Front-End چیست؟

فرانت اند (Front End) در فارسی با نام های طراح وب،‌ فرانت اند کار، برنامه نویس فرانت اند و… معرفی می شود، که معادل انگلیسی آن Front End یا Front End Developer و Front End Designer نیز می‌باشد. فرانت اند (Front End) یکی از راه های توسعه‌ وب و قسمتی از وب مانند صفحات، منو ها، دکمه ها، فونت ها، فرم های تماس می باشد که قابل مشاهده و تعامل است. در ادامه به معرفی تفاوت های بین بک اند و فرانت اند می پردازیم.

تفاوت فرانت اند و بک اند (Front End vs Back End)

فرانت اند (Front End)بک اند (Backend)
کد نویسی ها قابل مشاهده هستندکد نویسی ها قابل مشاهده نیستند
مربوط به ظاهر سایتمربوط به کارهای پشت صحنه سایت
کدها برای سمت کاربر نوشته می شوند (Client Side)کدها برای سمت سرور نوشته می شوند (Server Side)
استفاده از زبان های HTML, CSS, JavaScriptاستفاده از زبان های PHP, Ruby, Python
 پیاده‌سازی منطق سایت

مقایسه زبان Back-End و Front-End 

ردیفعنوان Back-EndFront End
۱زبان های برنامه نویسی

Java

JavaScript

PHP

Python

JavaScript

CSS

HTML

۲درجه اهمیتمکمل Front-Endمکمل Back-End
۳قابلیت دید برای کاربرندارددارد
۴نمونه سایت های استفاده شده 

Airbnb

uber.com

wordpress.org/download

Facebook

  Pinterest

Instagram

Disqus

www.mozilla.org/en-US

www.thenational.ae/international

www.nationalgeographic.com

pinterest

instagram

سخن پایانی

در دنیای طراحی سایت و کامپیوتر، اطلاعات و داده های زیادی در حال انتقال یا رد و بدل می شوند. این جابجایی داده ها و اطلاعات باعث پیشرفت ارتباطات و تکنولوژی می شود. در بین طراحان موضوع مدیریت و یکپارچه سازی اطلاعات و داده ها بسیار مهم می باشد و به همین دلیل تمام برنامه نویسان باید با Database و زبان های برنامه نویسی پایگاه داده آشنا باشند و بتوانند با آن ها کار کنند. به دلیل تنوع زیاد در زبان های برنامه نویسی پایگاه داده، انتخاب یک زبان مناسب در بین زبان های برنامه نویسی پایگاه داده کار سختی می باشد. در این مقاله به طور کامل به زبان های برنامه نویسی پایگاه داده پرداخته شده است و به راحتی به وسیله آن می توانید با زبان های برنامه نویسی پایگاه داده آشنا شوید و برنامه مورد نظر خود را انتخاب نمایید. 

برای دریافت پاسخ سوالات خود و بهره مند شدن از تجربه اساتید خبره و دیگر دوستانتان در کمپین آموزشی بی لرن می توانید سوالات خود را در کافه گپ و گفت مطرح نمایید و در سریعترین زمان، پاسخ سوال خود را دریافت نمایید. همچنین می توانید با عضویت در کمپین آموزشی بی لرن، از دوره های آموزشی رایگان و کاربردی در زمینه های مختلف به صورت تخصصی و حرفه ای بهره مند شوید. با توجه به مسیر یادگیری در زمینه های مختلف می توانید برای شروع طراحی سایت از آموزش MySQL بهره مند شوید.


منبع: belearn.ir