سلام عزیزان در این سری آموزشها با پایگاه داده Sql Server آشنا میشوید.
در قسمت قبل ( اول ) با مفاهيم زير آشنا شديد:
با ادامه آموزش Sql همراه باشيد
محدودیت DEFAULT برای وارد کردن مقداری به صورت پیش فرض در یک ستون استفاده می شود.
مقدار DEFAULT به تمام رکوردهای جدید اضافه می شود، البته اگر هیچ مقدار دیگری به جای آن درج نشود.
دستور SQL زیر در ستون “City” هنگامی که جدول “Persons” ایجاد می شود محدودیت DEFAULT را بوجود می آورد:
در My SQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
همچنین محدودیت DEFAULT می تواند با استفاده از توابعی همچون ()GETDATEبرای درج کردن مقادیری که مقدار خود را از سیستم می گیرند نیز استفاده شود:
CREATE TABLE Orders
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
OrderDate date DEFAULT GETDATE()
)
محدودیت DEFAULT در دستور ALTER TABLE
برای ایجاد محدودیت DEFAULT روی ستون “City” هنگامی که جدول، قبلا ایجاد شده از دستور SQL زیر استفاده کنید:
در MySQL:
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
در SQL Server / MS Access:
ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'SANDNES'
ALTER TABLE Persons MODIFY City DEFAULT 'SANDNES'
برای حذف محدودیت DEFAULT از دستور SQL زیر استفاده کنید:
ALTER TABLE Persons
ALTER City DROP DEFAULT
ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT
دستور CREATE INDEX برای ایجاد INDEX در جداول استفاده می شود.
شاخص ها به application پایگاه داده این اجازه را می دهند که بدون اینکه تمام جدول را بخواند داده ها را سریع پیدا کنند.
مفهوم Indexes
یک شاخص می تواند در یک جدول برای پیدا کردن سریعتر و مؤثرتر داده ها ایجاد شود.
کاربران نمی توانند indexها را ببینند، آنها تنها برای سریعتر کردن جستجوها و query ها کاربرد دارند.
نکته: به روز رسانی (Update) یک جدول INDEX دار زمان بیشتری نسبت به جدول بدون INDEX می برد (زیرا INDEXها نیز خود نیاز به، به روز رسانی دارند). بنابراین تنها روی ستونهایی (و جداولی) INDEX ایجاد کنید که به تناوب روی آن ها جستجو انجام خواهد شد.
فرم دستور CREATE INDEX در SQL
در یک جدول index ایجاد می کند. مقادیر تکراری مجاز هستند:
CREATE INDEX index_name
ON table_name (column_name)
فرم دستور CREATE UNIQUE INDEX:
در یک جدول شاخص یکتا ایجاد می کند. تکرار داده ها مجاز نمی باشد:
CREATE UNIQUE INDEX index_name
ON table_name (column_name)
نکته: فرم دستور ایجاد INDEX در پایگاه داده های مختلف با یکدیگر تفاوت دارد . بنابراین: فرم دستور را برای ایجاد index ها در پایگاه داده خود چک کنید.
دستور SQL زیر یک شاخص با نام “PIndex” را روی ستون “LastName” در جدول “Persons” ایجاد می کند:
CREATE INDEX PIndex
ON Persons (LastName)
اگر می خواهید یک شاخص را روی مجوعه ای از ستون ها تعریف کنید، می توانید نام آن ستون ها را در یک پرانتز بنویسید و آنها را با کاما از هم جدا کنید:
CREATE INDEX PIndex
ON Persons (LastName, FirstName)
شاخص ها، جداول و پایگاه داده ها به آسانی می توانند با دستور DROP حذف شوند.
دستور DROP INDEX برای حذف index در یک جدول استفاده می شود.
فرم دستور DROP INDEX در MS Access:
DROP INDEX index_name ON table_name
فرم دستور DROP INDEX در MS SQL Server:
DROP INDEX table_name.index_name
فرم دستور DROP INDEX در DB2/Oracle:
ALTER TABLE table_name DROP INDEX index_name
دستور DROP TABLE برای حذف یک جدول استفاده می شود.
DROP TABLE table_name
دستور DROP DATABASE
دستور DROP DATABASE برای حذف یک پایگاه داده استفاده می شود.
DROP DATABASE database_name
اگر قصد داشته باشیم تا داده های درون یک جدول و نه خود جدول را حذف کنیم چطور؟
در این صورت، از دستور TRUNCATE TABLE استفاده می کنیم:
آموزش SQL Server ادامه دارد