SQL AUTO INCREMENT Field
در SQL از AUTO INCREMENT برای تولید خودکار مقادیر عددی در هر ردیف جدید استفاده میکنیم.
این ویژگی معمولاً برای ستونهای کلید اصلی (PRIMARY KEY
) استفاده میشه تا نیازی به وارد کردن دستی مقدار نداشته باشیم.
🔹 مفهوم کلی
وقتی ستونی بهصورت AUTO INCREMENT تعریف میشه، با هر INSERT
جدید مقدارش بهطور خودکار یکی افزایش پیدا میکنه.
یعنی رکورد اول مقدار ۱ میگیره، رکورد دوم ۲، و به همین ترتیب.
🔹 در MySQL
📌 توضیح:
ستون StudentID
بهصورت خودکار مقدار جدید تولید میکنه.
✅ درج داده
📌 مقدار StudentID
به ترتیب ۱ و ۲ میشه، بدون اینکه ما واردش کنیم.
🔹 در SQL Server
در SQL Server از کلیدواژهی IDENTITY استفاده میکنیم:
📌 توضیح:
-
عدد اول
(1,1)
یعنی مقدار اولیه1
و گام افزایش1
هست. -
مثلاً رکوردها مقدار ۱، ۲، ۳ و ... میگیرن.
🔹 در PostgreSQL
دو روش رایج داره:
یا با نسخه جدیدتر (SQL Standard):
🔹 بازیابی مقدار آخرین رکورد افزودهشده
بعد از درج داده، میتونیم مقدار آخرین ID تولیدشده رو بگیریم:
-
MySQL:
-
SQL Server:
-
PostgreSQL:
🔹 نکات مهم
-
فقط یک ستون در هر جدول میتونه
AUTO INCREMENT
باشه. -
مقدارش همیشه یکتا و صعودی است (مگر دستی تغییرش بدی).
-
برای بازنشانی مقدار (ریست ID)، میتونی از دستور
ALTER TABLE
استفاده کنی.