در دیتابیسها، نوع دادهها (Data Types) مشخص میکنند که چه نوع اطلاعاتی میتواند در هر ستون از جدول ذخیره شود. این انواع دادهها به دیتابیس کمک میکنند تا دادهها را به صورت بهینه ذخیره و مدیریت کند. در اینجا برخی از انواع دادههای رایج در دیتابیسها آورده شده است:
1- اعداد صحیح (Integer):
- INT:
برای ذخیره اعداد صحیح معمولی.
- SMALLINT:
برای ذخیره اعداد صحیح کوچکتر.
- BIGINT:
برای ذخیره اعداد صحیح بزرگتر.
2- اعداد اعشاری (Decimal Numbers):
- FLOAT:
برای ذخیره اعداد اعشاری با دقت متغیر.
- DOUBLE:
برای ذخیره اعداد اعشاری با دقت بیشتر.
- DECIMAL:
برای ذخیره اعداد اعشاری با دقت ثابت.
3- رشتههای متنی (Text Strings):
- CHAR(n):
برای ذخیره رشتههای متنی با طول ثابت. n تعداد کاراکترهایی است که میتواند ذخیره شود. مثلاً CHAR(10) میتواند تا 10 کاراکتر را ذخیره کند.
- VARCHAR(n):
برای ذخیره رشتههای متنی با طول متغیر. n حداکثر تعداد کاراکترهایی است که میتواند ذخیره شود. مثلاً VARCHAR(255) میتواند تا 255 کاراکتر را ذخیره کند.
- TEXT:
برای ذخیره رشتههای متنی طولانی.
4- تاریخ و زمان (Date and Time):
- DATE:
برای ذخیره تاریخ.
- TIME:
برای ذخیره زمان.
- DATETIME:
برای ذخیره تاریخ و زمان با هم.
- TIMESTAMP:
برای ذخیره تاریخ و زمان به همراه منطقه زمانی.
5- نوع دادههای باینری (Binary Data Types):
- BLOB: برای ذخیره دادههای باینری بزرگ مانند تصاویر و فایلها.
6- نوع دادههای منطقی (Boolean Data Types):
- BOOLEAN:
برای ذخیره مقادیر منطقی (True/False).
توضیح n در CHAR(n) و VARCHAR(n)حروف n در CHAR(n) و VARCHAR(n) نشاندهنده حداکثر تعداد کاراکترهایی است که میتواند در آن ستون ذخیره شود. برای مثال:
- CHAR(10):
این نوع داده میتواند دقیقاً 10 کاراکتر را ذخیره کند. اگر رشتهای کمتر از 10 کاراکتر باشد، فضای باقیمانده با فاصله (space) پر میشود.
- VARCHAR(255) :
این نوع داده میتواند تا 255 کاراکتر را ذخیره کند. اگر رشتهای کمتر از 255 کاراکتر باشد، فقط همان تعداد کاراکتر ذخیره میشود و فضای اضافی اشغال نمیشود.
در SQL Server، نوع داده NVARCHAR برای ذخیرهسازی رشتههای متنی با طول متغیر و پشتیبانی از کاراکترهای Unicode استفاده میشود. این نوع داده برای ذخیرهسازی متنهایی که شامل کاراکترهای زبانهای مختلف (مانند فارسی) هستند، مناسب است.
ساختار استفاده از NVARCHAR به این صورت است:
NVARCHAR(n)
در این ساختار، n طول رشته را مشخص میکند و میتواند مقداری بین 1 تا 4000 باشد. اگر طول رشته مشخص نشود، مقدار پیشفرض آن 1 است.
ویژگیهای کلیدی NVARCHAR:
- پشتیبانی از Unicode: هر کاراکتر Unicode دو بایت فضا اشغال میکند.
- طول متغیر: فقط به اندازه داده واقعی فضا اشغال میکند، نه به اندازه حداکثر طول تعریف شده.
929.8K حجم رسانه بالاست
مشاهده در ایتا
اگر هنگام ویرایش همچین خطایی دیدید با این روش خطا را برطرف کنید
5.6M حجم رسانه بالاست
مشاهده در ایتا
برای ایجاد جدولی در SQL Server که شامل یک ستون id به عنوان کلید اصلی (PRIMARY KEY) باشد و اجازه ندهد مقادیر NULL داشته باشد، و همچنین ستون name که اجازه NULL نداشته باشد و ستون email که اجازه NULL داشته باشد، میتوانید از کوئری زیر استفاده کنید:
CREATE TABLE Person (
id INT PRIMARY KEY,
name NVARCHAR(100) NOT NULL,
email VARCHAR(100) NULL
);
در این کوئری:
- ستون id به عنوان کلید اصلی تعریف شده و نمیتواند مقدار NULL داشته باشد.
- ستون name نیز نمیتواند مقدار NULL داشته باشد.
- ستون email میتواند مقدار NULL داشته باشد.
ویژگی Identity در SQL Server برای تولید خودکار اعداد منحصربهفرد و با افزایش ترتیبی استفاده میشود. این ویژگی معمولاً برای ستونهای کلید اصلی (Primary Key) به کار میرود تا شناسههای منحصربهفردی برای هر رکورد جدید ایجاد کند.
به عنوان مثال، اگر یک جدول با ستون Identity داشته باشید، هر بار که یک رکورد جدید اضافه میشود، مقدار این ستون به طور خودکار افزایش مییابد. این کار باعث میشود که نیازی به وارد کردن دستی شناسهها نباشد و از یکپارچگی دادهها اطمینان حاصل شود.
در SQL Server، ویژگی IDENTITY برای ایجاد ستونهای هویت استفاده میشود که به طور خودکار مقادیر منحصر به فردی را برای هر ردیف جدید تولید میکنند. این ویژگی دو پارامتر اصلی دارد:
Seed (بذر):
مقدار اولیهای که برای اولین ردیف در جدول استفاده میشود.
Increment (افزایش):
مقدار افزایشی که به مقدار هویت ردیف قبلی اضافه میشود.
به طور پیشفرض، مقدار بذر و افزایش هر دو برابر 1 هستند، یعنی اولین ردیف مقدار 1، دومین ردیف مقدار 2 و به همین ترتیب خواهد داشت12.
برای مثال، اگر بخواهید مقدار اولیه 10 و مقدار افزایشی 5 باشد، میتوانید از دستور زیر استفاده کنید:
CREATE TABLE MyTable (
ID INT IDENTITY(10, 5) PRIMARY KEY,
Name VARCHAR(50)
);
در این مثال، اولین ردیف مقدار 10، دومین ردیف مقدار 15 و به همین ترتیب خواهد داشت.
در اینجا یک مثال ساده از نحوه ایجاد یک جدول در SQL Server آورده شده است:
- ایجاد دیتابیس:
ابتدا باید یک دیتابیس ایجاد کنید. برای این کار از دستور زیر استفاده میشود:
CREATE DATABASE mydatabase;
- انتخاب دیتابیس:
سپس باید دیتابیس ایجاد شده را انتخاب کنید:
USE mydatabase;
- ایجاد جدول:
حالا میتوانید جدول خود را ایجاد کنید. به عنوان مثال، برای ایجاد یک جدول به نام customers با ستونهای id، name و email، از دستور زیر استفاده میشود:
CREATE TABLE customers (
id INT PRIMARY KEY,
name NVARCHAR(100),
email VARCHAR(100)
);
این دستورات به شما اجازه میدهند تا یک جدول ساده در دیتابیس خود ایجاد کنید. هر ستون میتواند نوع دادههای مختلفی داشته باشد، مانند INT برای اعداد صحیح و VARCHAR و NVARCHAR برای رشتههای متنی.
در SQL Server، نمیتوانید از کلمات کلیدی رزرو شده (Reserved Keywords) برای نامگذاری اشیاء مانند جداول، ستونها، و غیره استفاده کنید. این کلمات کلیدی برای دستورات SQL استفاده میشوند و استفاده از آنها به عنوان نام میتواند باعث ایجاد خطا و مشکلات در اجرای دستورات شود.
برای مثال، نمیتوانید جدولی با نام SELECT یا ستونی با نام FROM ایجاد کنید. اگر نیاز دارید از نامی استفاده کنید که مشابه یک کلمه کلیدی است، میتوانید از براکتها ([]) استفاده کنید. به عنوان مثال:
CREATE TABLE [SELECT] (
[FROM] INT,
[WHERE] NVARCHAR(50)
);
2.7M حجم رسانه بالاست
مشاهده در ایتا
برای اضافه کردن یک ستون جدید به جدول در SQL Server، میتوانید از دستور ALTER TABLE استفاده کنید. به عنوان مثال، اگر بخواهید یک ستون به نام BirthPlace با نوع داده nvarchar(150) به جدول tblStudents اضافه کنید، دستور زیر را اجرا کنید:
ALTER TABLE Person
ADD Phone nvarchar(150);
این دستور ستون جدیدی به نام phone با نوع داده nvarchar(150) به جدول person اضافه میکند.