شروع اسکریپت نویسی در sqlserver

1395/11/17 فریبا جهاندیده 2569

با سلام به دوستان عزیز، امروز با سری جدیدی از آموزش SQL SERVER در خدمت شما هستم و در درس امروز باهم اسکریپت نویسیSQL SERVER  را آغاز میکنیم.

ساخت جدول در Sqlserver

فرض کنید دیتابیس از پیش ساخته شده و قصد داریم تا جدولی در آن بسازیم

به چند روش میتوان این کار را انجام داد:

  1. از طریق wizard نرم افزار
  2. از طریق اسکریپت نویسی

روش اول :

طبق شکل روبرو روی table  کلیک راست کرده و گزینه new table  را نیز انتخاب کرده و سپس فیلدهای مورد نظر را ایجاد می کنیم.

ساخت جدول جدید در sql server

در این جا من فیلد  Code  را  Primary  قرار دادم و تیک  Allow null  را برداشتم تا از ایجاد دیتا خالی جلوگیری کنم.

انتخاب فیلد به عنوان کلید اصلی

هنگام ذخیره کردن نام Table  را انتخاب کنید.

 

توجه داشته باشید بهتر است  حرف اول فیلد حرف بزرگ باشد.     

تعیین نام جدول در sqlserver

روش دوم با استفاده از اسکریپت نویسی : 

CREATE TABLE [dbo].[CenterInfo](

          [Code] [smallint] Primary key  NOT NULL,

          [Name] [varchar] (50) NOT NULL,

          [Tel] [varchar] (50) NULL,

          [Address] [varchar] (255) NULL,

          [ZipCode] [varchar] (20) NULL);

 

همانطور که مشاهده میکنید جدول مورد نظر ساخته شد و فیلدهای مورد نظر همراه با انواع داده ای هر کدام ساخته شد. (در جلسه قبل در مورد دیتا تایپ ها توضیحات داده شد.)

 

جدول ساخته ده در sqlserver

        

برای اینکه بتوانید در این جدول اطلاعات وارد کنید روی جدول کلیک راست کرده  و گزینه Edit top 200 rows را طبق عکس انتخاب کنید

درج اطلاعات جدید در sqlserver

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

خطای Allow null در sqlserver

دستورات SELECT

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

SELECT column_name
FROM table_name;

یا

SELECT * FROM table_name;

 

علامت * یعنی تمامی فیلدهای یک جدول  با دستور دوم واکشی میشود و در دستور اول شما میتوانید مشخص کنید که چه فیلد هایی را نیاز دارید

در جدول که طراحی کردیم اطلاعات سطرها را به این صورت بدست می آوریم

از جدول مقادیر تمامی فیلدها نمایش داده میشود..

Select * fromCenterInfo

اجرای دستور select روی جدول

 

برای بدست آوردن فیلد دلخواه به کد روبرو توجه کنید.

Select  code, name  from  CenterInfo

اجرای دستور select برای تعدادی فیلد مشخص در sqlserver

دستور شرطی Where

 

چنانچه دستوری حاوی شرط where  باشد تمامی رکوردها به ازای آن شرط کنترل میشود اگر شرط درست صدق کند آن دستورتوسط Select  انتخاب میشود.در اینجا با دستور

Where  مقادیر فیلتر میشود.بعد از دستور Select  و ستون ها دستور شرطی بلافاصله بایستی ذکر شود.

دستور Update,Delete

برای اینکه بتوانیم یک رکورد را حذف یا بروز کنیم از دستورات زیر استفاده میکنیم.مقدار کد از 30 به 20 بروز میشود جاییکه کد مقدار 20 دارد.

Update  CenterInfo  Set  code = 30  where  code = 20  

با دستور Delete  میتوانم کل رکوردها یا یک رکورد را حذف کنم

Delete CenterInfo   where code = 30

با این دستور هر جا که فیلد مقدار 30 را دارد حذف میشود. اگر تمامی مقادیر آن جدول مورد نظر باشد میتوانیم از شرط استفاده نکنیم.

دستور Insert into

برای ایجاد یک  رکورد جدید بایستی  از دستور زیر استفاده کنیم.طبق دستور ابتدا فیلدها را معرفی کرده و با دستور Values  به آن فیلدها مقدار میدهیم.

 رکورد با کد 30 درج شد.

insert into [CenterInfo] (Code, Name, Tel, Address, ZipCode)

values                   (30,  'sara',0215555555,'tehran-parand',0098)

اجرای دستور insert در sqlserver\

دستور Like

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

Select * from Centerinfo where name like '%F%'                                                                 

با این دستور فیلد نام که شامل حرف  F هست یافت میشود.

اجرای دستور like روی جدول در  sqlserver

SELECT * FROM Centerinfo
WHERE name LIKE '%n';

با این دستور فیلدی را پیدا میکنیم که حرف اولش N  باشد

اجرای دستور like روی جدول

SELECT * FROM Centerinfo
WHERE name LIKE 'd%';

با این دستور تنها رکوردهایی را بدست می آورم که فیلد Address  آن به d ختم میشود

اجرای دستور like روی جدول

در جدول زیر اپراتور مقایسه ای where  توضیح داده شده است

جدول اوپراتور where در sqlserver

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

کلمات کلیدی