×

اشیاء دیتابیس SQL Server

فصل چهارم :

اشیاء دیتابیس SQL Server

SQL (Structured Query Language)
زبان ساخت یافته پرس و جو از پایگاه داده

زبان استاندارد کاربا relational database ها می باشد

TSQL (Transact structured query language)


برای استفاده از sql server از زبانی بنام Tsql استفاده می شود . تمام نرم افزارهایی که با اس کیو ال سرور کار میکنند و اطلاعات رد و بدل مینمایند تنها دستورات Tsql را به instance اسکیو ال سرور ارسال میکنند . جدا از اینکه به چه زبانی توشته شده باشند و یا در چه پلت فرمی کارکنند .

دستورات اس کیو ال عموما به پنج دسته ذیل تقسیم می شوند :

DDL (Data Definition Language) : 1

جهت تعریف اشیاء
  • Create : ایجاد یک دیتابیس یا یک آبجکت
  • Alter : تغییر یک دیتابیس یا یک آبجکت
  • Drop : حذف یک دیتابیس یا یک آبجکت

DML (Data Manipulation Language) : 2

جهت اعمال تغییرات رکوردهای موجود در جداول
  • Insert : درج رکورد/ها در جداول
  • Update : بروز رسانی رکورد/ ها در جداول
  • Delete : حذف رکورد/ها از جداول

DQL (Data Query Language) : 3

جهت پرس و جو یا Query از داده ها
  • Select : کوئری از داده های موجود (بیشترین کاربر را دارد)

DCL (Data Control Language) : 4

جهت کنترل مجوز های دسترسی و ایتم های امنیتی
  • Grant : اعطالی مجوز جدید به کاربر
  • Revoke : حذف مجوز اعطا شده قبلی
  • Deny : صریحا جلوگیری از اعطای مجوز به کاربر

TCL (Transaction Control Language) : 5

جهت کنترل تراکنش ها
  • Commit : ذخیره اطلاعات تغییر یافته در ضمن تراکنش در دیتابیس
  • Rollback : بازگشت تمامی تغییرات انجام شده بر اطلاعات در ضمن تراکنش
  • SAVE POINT: تقسیم یک تراکنش به قسمتهای کوچک تر

در ادامه دوره تمامی گروه ها به همراه مثال توضیح داده خواهند شد .

مختری در باره قواعد عمومی نامگذاری در sql :

  • سعی کنید نام هارا تا حد ممکن کوتاه انتخاب کنید کمتر از 50 کاراکتر. هر چه نام کوتاه تر بهتر .
  • تا حد ممکن از _ آندر لاین (underscore) استفاده نکنید حتی اگر سیستم به شما اجازه دهد ، برای افزایش خوانایی نام ها می توانید از PascalCase استفاده کنید به این صورت که اگر نامی شامل چند کلمه بود حرف ابتدایی هر کلمه را با حروف بزرگ بنویسید مثلا : ListForooshMehr
  • تا حد ممکن از حروف استفاده کنید و از کاراکتر هایی همانند (-) اجتناب کنید.
  • برای اولین کاراکتر از یک نام از حروف استفاده کنید.
  • از نامها از space استفاده نکنید حتی اگر سیستم اجازه آن را به شما بدهد .

ایجاد یک دیتابیس با کمک دستورات tsql :

برای ایجاد یک دیتابیس از دستور create که جزو گروه DDL می باشد استفاده می نماییم : create database test1

ایجاد دیتابیسی جدید با کمی تنظیمات بیشتر : USE master GO
CREATE DATABASE Foroosh
ON
( NAME = Foroosh,
FILENAME = 'c:\databases\Foroosh.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'Sales_log',
FILENAME = 'c:\databases\Foroosh.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO

حال با استفاده از ویزارد New Database تنظیمات را انجام میدهیم . با کلید اسکریپت اسکریپت ایجاد شده ناشی از تنظیمات را مشاهده میکنیم. می بینیم کاری که محیط sql server management studio انجام میدهد در واقع ایجاد اسکریپت ها و اجرای آنهاست . هر عملی که توسط این محیط انجام میگیرد در واقع اسکریپت اس کیو الی دارد که ssms انرا ایجاد میکند. این اسکریپت اس کیو ال را می توان به سرور دیگر منطقل کرد و آنرا اجرا نمود و نتایج مشابه گرفت .

Table

یک جدول یا table عبارتست از مجموعه ایی از اطلاعات مرتبط ، که به شکل ساخت یافته ایی در یک دیتابیس نگهداری میشوند . هر جدول از ستون ها (فیلد field) سطر ها (rows و یا record ) تشکیل شده است .

قواعد نام گذاری Table :

  • از اسمهای منفرد استفاده کنید اسم ها را با s در آخر جمع نبندید مثلا برای جدول مشتریان نام customer صحیح است و نه customers
  • از پیشوند برای نامها استفاده نکنید مثلا "tbCustomer" یا "tbl_customers" اصلا مناسب و یا خوانا نیستند. و اساسا نیاز برای مشخص کردن نوع ابجک جدول نیست چون خود محیط Management Studio این کار را برای شما انجام میدهد .
  • از PascalCase استفاده کنید
  • از _ underscore استفاده نکنید.
  • برای افزایش خوانایی می توانید از نام های فارسی استفاده کنید اما نه با خط فارس بلکه بصورت فینگلیش همانند : Moshtari , Ketab

Field

قلم اطلاعاتی یا ستون (Column) یک فیلد حاوی مجموعه ایی از مقادیر داده ایست که همگی از یک نوع خاص هستند. یک فیلد ستونی از جدول است که طراحی شده تا اطلاعات خاصی را برای هر سطر جدول در خود نگهدارد . مثلا برای ثبت اطلاعات دانش آموزان یک کلاس جدولی طراحی میکنیم . هر ویژگی یک دانش آموز که می خواهیم در table ذخیره شود بعنوان یک فیلد در نظر گرفته میشود . مثلا فیلد نام ، فیلد نام خانوادگی ، فیلد سال تولد و ... هر فیلد دارای خصوصیت ها و ویژگیهای متعددی است که ساده ترین آنها عبارتند از

  • 1. نام فیلد : در نامگذاری فیلد ها قواعد نامگذاری عمومی که قبلا توضیح داده شد را رعایت کنید.
  • 2. نوع داده (DataType) : خصوصیتی است که نوع اطلاعاتی که یک شی آن را نگه میدارد مشخص میکند. مثل : عدد صحیح ، عدد اعشاری ، رشته ایی از کاراکتر ها و ...
Datatype ها در اس کیو ال سرور به 7 گروه ذیل تقسیم می شوند :
  • 1. Exact numeric : مقادیر عددی دقیق
  • 2. Approximate numeric : مقادیر عددی تقریبی
  • 3. Date and time : تاریخ و ساعت
  • 4. Character strings : رشته های کاراکتری
  • 5. Unicode character strings : رشته های کاراکتری یونیکدی (مناسب برای فارسی)
  • 6. Binary strings : رشته های باینری
  • 7. Other data types : سایر انواع داده

مفاهیم و موضوعات این فصل عبارتند از :

  • معرفی کلی دستورات TSQL

  • ایجاد دیتابیس جدید با TSQL

  • جدول (TABLE)

  • قواعد نامگذاری جداول

  • فیلد (FIELD)

  • معرفی DataType ها در SQL Server

vatantop
نظرات و سوالات درج سوال/ نظر