آشنایی با ویژگی Auto Increment در SQL

sql auto increment tutorial
20 آبان 1403

ویژگی Auto Increment در SQL یکی از قابلیت‌هایی است که هنگام کار با پایگاه داده‌ها بسیار کاربردی است. این ویژگی به شما اجازه می‌دهد به صورت خودکار مقدار یک ستون خاص از جدول را با هر بار اضافه شدن سطر جدید، افزایش دهید. این قابلیت معمولاً برای ستون‌هایی که نقش کلید اصلی (Primary Key) دارند استفاده می‌شود تا به صورت خودکار و بدون نیاز به دخالت دستی، مقدارهای یکتا ایجاد کند.

با استفاده از Auto Increment دیگر نیازی به نوشتن یک سریال دستی برای هر سطر جدید ندارید. تصور کنید در یک جدول کاربری، قصد دارید به هر کاربر یک شناسه یکتا تخصیص دهید. با فعال کردن این ویژگی، هر کاربر جدید که اضافه می‌شود به طور خودکار یک شناسه جدید و منحصر به فرد خواهد گرفت.

استفاده از Auto Increment خصوصاً زمانی اهمیت پیدا می‌کند که مقیاس داده‌ها افزایش می‌یابد و مدیریت دستی یکتا بودن شناسه‌ها پیچیده می‌شود. این قابلیت، ترتیبی و یکتا بودن مقادیر را تضمین می‌کند و از برخورد مقادیر کپی جلوگیری می‌کند.

راه‌اندازی این ویژگی در SQL بسیار ساده است. کافی است هنگام تعریف ستون مورد نظر، عبارت Auto Increment را اضافه نمایید. با این کار، SQL به صورت خودکار اعداد را افزایش داده و در صورت حذف یا اضافه کردن داده‌ها، به تناسب تنظیمات انجام شده، مقادیر را مدیریت می‌کند.

البته باید به خاطر داشت که هر پایگاه داده‌ای ممکن است نحو خاص خود را برای تعریف Auto Increment داشته باشد. برای نمونه، دستور مورد استفاده در MySQL ممکن است با SQL Server یا PostgreSQL تفاوت داشته باشد.

به عنوان مثال، بیایید نحوه استفاده از Auto Increment در MySQL را ببینیم:


CREATE TABLE users (
id INT AUTO_INCREMENT,
username VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);

توضیح خط به خط کد:

CREATE TABLE users: دستور ایجاد یک جدول جدید با نام users.
id INT AUTO_INCREMENT: تعریف ستونی با نام id که نوع آن INT است و خاصیت AUTO_INCREMENT دارد، یعنی به طور خودکار افزایش می‌یابد.
username VARCHAR(255) NOT NULL: تعریف ستونی به نام username با نوع داده VARCHAR با طول 255 کاراکتر که نمی‌تواند مقدار NULL داشته باشد.
email VARCHAR(255) NOT NULL: تعریف ستونی به نام email مشابه username.
PRIMARY KEY (id): تعیین ستون id به عنوان کلید اصلی جدول، که یکتا بودن مقادیر را تضمین می‌کند.

سوالات متداول

؟

چطور می‌توانم از Auto Increment در SQL استفاده کنم؟

؟

آیا همه پایگاه داده‌ها از Auto Increment پشتیبانی می‌کنند؟

؟

آیا می‌توان مقدار اولیه Auto Increment را تغییر داد؟