خانه SQL Server دستور Insert در SQL Server SQL Server دستورات SQL نوشته شده توسط: تیم فنی نیک آموز تاریخ انتشار: ۲۴ دی ۱۴۰۲ آخرین بروزرسانی: 08 آذر 1403 زمان مطالعه: 8 دقیقه ۵ (۳) دستور Insert در SQL Server به منظور درج رکورد (سطر | Row) به جداول پایگاه داده (Database) مورد استفاده قرار میگیرد. در مقاله پیشین، دستور Select و کاربردهای آن را بررسی کردیم تا شما نحوه استفاده از این دستور در پایگاه داده رابطه ای (RDBMS) را فرا بگیرید. حال، در این مطلب قصد داریم دستور Insert ، که یکی از دستورات کاربردی در SQL Server است، را بررسی کنیم. برای درک بهتر مفاهیم، پیشنهاد میکنیم ابتدا آموزش جامع SQL Server را مطالعه کنید. دستور Insert در SQL Server چیست؟ دستور Insert در SQL Server برای درج یک یا چند سطر به جدول به کار میرود و به واسطه آن میتوانید برخی از عملیات حیاتی مربوط به پایگاه داده را انجام دهید. در این دستور، از کلمه کلیدی Insert Into استفاده میشود. ساختار کلی دستور Insert به صورت زیر است: INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); اجزای دستور فوق، به شرح زیر است: table_name: منظور از table_name، نام جدولی است که قصد دارید به آن دادهها را درج کنید. (column1, column2, column3, …): این قسمت، لیست ستونها یا فیلدها است و شما میتوانید به واسطه آن، مشخص کنید که دادهها به کدام فیلد Insert شوند. در صورت تعیین نکردن این جز از دستور Insert ، فرض میشود که مقادیر، به ترتیب برای تمامی فیلدها در نظر گرفته شدهاند. ;VALUES (value1, value2, value3, …): این بخش، مقادیری است که میخواهید به هرکدام از فیلدها تخصیص دهید تا در جدول درج شوند. با این دید مقدماتی از دستور Insert در SQL Server ، در بخش بعدی، انواع کاربردهای این دستور را شرح خواهیم داد. کاربرد دستور Insert در SQL Server کاربردهای دستور Insert در SQL Server تنها به درج رکورد محدود نمیشود و شما میتوانید از آن در اسکریپت های پرکاربرد SQL بهرهمند شوید. برخی از مهمترین موارد استفاده دستور درج رکورد در SQL Server به شرح زیر است: درج داده های جدید همانطور که پیشتر به آن اشاره شد، کلیدیترین کاربرد دستور Insert ، افزودن رکوردهای جدید به یک جدول است. دستور Insert این امکان را به شما میدهد که دادهها را به ستونهای خاصی اضافه کنید و به کمک آن، یک روشی برای درج اطلاعات جدید به پایگاه داده داشته باشید. برای درک بهتر، به مثال زیر توجه کنید. INSERT INTO Customers (CustomerID, CompanyName, ContactName, Country) VALUES ('ZBRE', 'Nim Pranch', 'Sarah Colon', 'France'); با اجرای کوئری فوق، یک رکورد مربوط به مشتری جدید به جدول Cutomers اضافه میشود. در این مثال، برای فیلدهای جدول، به ترتیب، مقادیر تعیینشده اضافه خواهد شد. درج چند رکورد به صورت همزمان با به کارگیری تنها یک دستور Insert در SQL Server ، امکان درج همزمان چندین رکورد به جدول وجود دارد. طبیعتاً برای چنین شرایطی، اجرای یک دستور Insert کارایی بیشتری نسبت به اجرای چند دستور Insert دارد. مثال زیر، جزئیات این موضوع را شفافسازی میکند. درج سه رکورد در جدول با یک دستور Insert INSERT INTO Employees (FirstName, LastName, Title, BirthDate, Country, City, HireDate) VALUES ('John', 'ADoe', 'Sales Manager', '1980-01-15', 'USA', 'New York', '2000-05-01'), ('Jane', 'ASmith', 'Software Developer', '1985-03-20', 'USA', 'Los Angeles', '2005-08-10'), ('Alice', 'AJohnson', 'HR Manager', '1977-09-05', 'Canada', 'Toronto', '2002-12-15') درج سه رکورد در جدول با سه دستور Insert INSERT INTO Employees (FirstName, LastName, Title, BirthDate, Country, City, HireDate) VALUES (1, 'John', 'ADoe', 'Sales Manager', '1980-01-15', 'USA', 'New York', '2000-05-01'); INSERT INTO Employees (FirstName, LastName, Title, BirthDate, Country, City, HireDate) VALUES (2, 'Jane', 'ASmith', 'Software Developer', '1985-03-20', 'USA', 'Los Angeles', '2005-08-10'); INSERT INTO Employees (FirstName, LastName, Title, BirthDate, Country, City, HireDate) VALUES (3, 'Alice', 'AJohnson', 'HR Manager', '1977-09-05', 'Canada', 'Toronto', '2002-12-15'); در مثال فوق، با کمک دستور Insert Into ، سه رکورد را به صورت همزمان، به جدول Employees درج کردهایم. ایجاد نسخه کپی از داده های جدول شما میتوانید دستور Insert و دستور Select و کاربردهای آن را به گونهای استفاده کنید که دادهها از یک جدول به جدول دیگر اضافه شوند. برای انجام این کار، لازم است از سینتکس Insert Into …. Select استفاده کنید. به واسطه این قابلیت، میتوانید دادهها را از منابع مختلف کپی کنید. به منظور درک بهتر، در ادامه یک مثال قرار داده شده است. USE Northwind; CREATE TABLE DiscontinuedProducts ( ProductID INT, ProductName NVARCHAR(50), SupplierID INT, CategoryID INT, Discontinued BIT ); INSERT INTO DiscontinuedProducts (ProductID, ProductName, SupplierID, CategoryID, Discontinued) SELECT ProductID, ProductName, SupplierID, CategoryID, Discontinued FROM Products WHERE Discontinued = 1; در مثال فوق، ابتدا یک جدول برای محصولاتی که توقف تولید شدهاند، ایجاد کرده و در ادامه، این محصولات را با استفاده از دستور Insert ، از جدول Products به این جدول جدید (DiscontinuedProducts) درج میکنیم. خروجی این دوره کوئری نویسی پیشرفته به صورت زیر است: تاثیر دستور Insert بر روی فیلدهایی از نوع Identity زمانی که جدول دیتابیس حاوی ستون Identity است، دستور Insert به شما اجازه میدهد که آن ستون را از لیست ستونها از قلم بیاندازید. ستون Identity، یک فیلد در جدول پایگاه داده است که با افزایش یک رکورد جدید به جدول، مقدار آن به طور خودکار افزایش مییابد. معمولاً از این ستون بهعنوان کلید اصلی (PK | Primary Key) جدول استفاده میکنیم تا خیالتان از بابت یکتایی (Uniqueness) هر رکورد راحت باشد. در مثال زیر، با اجرای این کوئری، ابتدا یک جدول تحت عنوان ExampleTable ایجاد میکنیم که دارای Identity Coulmn است و پس از آن، بدون نیاز به مقداردهی کردن ستون Identity، یک رکورد جدید به این جدول درج میکنیم. CREATE TABLE ExampleTable ( ID INT IDENTITY(1,1) PRIMARY KEY, Name NVARCHAR(50), Description NVARCHAR(255) ); INSERT INTO ExampleTable (Name, Description) VALUES ('Example Name', 'This is an example description'); خروجی حاصل از اجرای دستور Insert مذکور، به صورت زیر است: تعیین مقادیر پیش فرض با کمک دستور DEFAULT VALUES میتوان یک سطر جدید به همراه مقادیر پیشفرض برای تمامی ستونها درج کرد. این موضوع در مواقعی مناسب است که ستونها دارای محدودیتهای پیشفرض (Default Constraints) هستند. شایان ذکر است که شما میتوانید تمام محدودیتهای پیشفرض تعریفشده را ازطریق یک اسکریپت مشاهده کنید. برای آشنایی با نحوه انجام این کار، پیشنهاد میشود مقاله اسکریپت: خلاصه ای از Default Constraint های تعریف شده در یک دیتابیس را مطالعه کنید. مثال زیر، به کاربرد دستور Insert در SQL Server و اهمیت آن در تعیین مقدار پیشفرض اشاره دارد. USE Northwind; INSERT INTO Orders DEFAULT VALUES; با اجرای کوئری فوق، یک رکور با مقادیر پیشفرض به جدول Orders درج میشود. تراکنش ها (Transaction) تراکنش (Transaction) در دستورات SQL Server، دنبالهای از یک یا چند دستور SQL است که بهعنوان یک واحد کاری یکه اجرا میشوند. هدف از تراکنشها، اطمینان از سازگاری (Consistency) و یکپارچگی (Integrity) دادهها در درون پایگاه داده است. در حقیقت، به واسطه تراکنشها، یک مکانیزم مناسب برای گروهبندی چند عملیات SQL به یک عملیات تجزیهناپذیر یا همان Atomic فراهم خواهد شد. تراکنشها این تضمین را میدهند که یا تمام تغییرات درون تراکنش اعمال میشوند یا هیچ کدام از آنها اعمال نخواهند شد. این ویژگی «همه یا هیچ» در تراکنشها، به هدف حفظ سازگاری پایگاه داده ارائه شده است. مثال زیر، نحوه ایجاد یک تراکنش و درج یک رکورد مشتری جدید به جدول آن را نمایش میدهد. BEGIN TRANSACTION; INSERT INTO Customers (CustomerID, CompanyName, ContactName, Country) VALUES ('NEWC1', 'New Company', 'John Doe', 'USA'); COMMIT TRANSACTION; استفاده از دستور Insert به صورت شرطی با قید کردن شرطهایی در دستور Insert ، میتوان دادههای درجشونده را براساس معیارهای خاصی کنترل کرد. این عمل، هنگام فیلترینگ داده در حین درج آن کاربرد است. برای درک بهتر، به مثال زیر توجه کنید. INSERT INTO Products (ProductName, CategoryID, SupplierID, UnitPrice) SELECT 'Blueberry drink', CategoryID, 1, 10.99 FROM Categories WHERE CategoryName = 'Beverages'; سخن پایانی دستور Insert در SQL Server ، از Command های پایه به شمار میرود و استفاده از آن، مزیتهای مخصوص به خود را به همراه دارد. در عمل، اموری همچون درج داده در جداول بانک اطلاعاتی، تخصیص مقدار به فیلدها استفاده در تراکنشها و سایر موارد، همگی از کاربردهای دستور Insert تلقی میشوند. در این مطلب، به بررسی دقیق موارد استفاده دستور Insert در SQL Server پرداخته شد. به دلیل اهمیت دستورات SQL Server و کوئرینویسی در حوزهها و دامنههای گوناگون علم کامپیوتر، در مقالات آتی، سایر دستورات آن را تشریح میکنیم. ما در نیک آموز منتظر نظرات ارزشمند شما درباره این مقاله هستیم. چه رتبه ای میدهید؟ میانگین ۵ / ۵. از مجموع ۳ اولین نفر باش دانلود مقاله دستور Insert در SQL Server فرمت PDF 7 صفحه حجم 0/5 مگابایت دانلود مقاله معرفی نویسنده مقالات 401 مقاله توسط این نویسنده محصولات 0 دوره توسط این نویسنده تیم فنی نیک آموز معرفی محصول ایمان باقری آموزش کوئری نویسی در sql server 2.190.000 تومان مقالات مرتبط ۰۲ آبان SQL Server ابزار Database Engine Tuning Advisor؛ مزایا، کاربردها و روش استفاده تیم فنی نیک آموز ۱۵ مهر SQL Server معرفی Performance Monitor ابزار مانیتورینگ SQL Server تیم فنی نیک آموز ۱۱ مهر SQL Server راهنمای جامع مانیتورینگ بکاپ ها در SQL Server تیم فنی نیک آموز ۰۸ مهر SQL Server Resource Governor چیست؟ آشنایی با نحوه پیکربندی و اهمیت های آن تیم فنی نیک آموز دیدگاه کاربران لغو پاسخ دیدگاه نام و نام خانوادگی ایمیل ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی مینویسم. موبایل برای اطلاع از پاسخ لطفاً مرا با خبر کن ثبت دیدگاه Δ