درج چند رکورد در یک جدول

درج چند رکورد در یک جدول

نوشته شده توسط: مسعود طاهری
۱۷ فروردین ۱۳۹۴
زمان مطالعه: 8 دقیقه
۵
(۲)

مقدمه

یکی از قابلیت‌هایی که در SQL Server وجود دارد درج همزمان چند رکورد در بانک اطلاعاتی می‌باشد. برای اینکه این کار را بتوانیم در SQL Server انجام دهیم یک بانک اطلاعاتی و جدول تستی با استفاده از Scriptهای زیر ایجاد نمایید.
USE master
GO
IF DB_ID('TestDB')>0
BEGIN
ALTER DATABASE TestDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DROP DATABASE TestDB
END
GO
CREATE DATABASE TestDB
GO
USE TestDB
GO
CREATE TABLE MyTable
(
,Col1 INT PRIMARY KEY
Col2 NVARCHAR(20)
)
در ادامه اسکریپت‌های زیر نحوه درج چندین رکورد در یک جدول را به طور همزمان نشان می‌دهد.
دوره کوئری نویسی نیک آموز

استفاده از چندین دستور Insert

در این روش به ازای درج هر رکورد در جدول یک دستور Insert نوشته می‌شود. این روش یکی از ساده‌ترین روش‌ها جهت درج چندین رکورد در بانک اطلاعاتی می‌باشد.
INSERT INTO MyTable (Col1,Col2)
VALUES (1,'S1-1')
INSERT INTO MyTable (Col1,Col2)
VALUES (2,'S1-2')
INSERT INTO MyTable (Col1,Col2)
VALUES (3,'S1-3')
INSERT INTO MyTable (Col1,Col2)
VALUES (4,'S1-4')
GO

استفاده از Union

در این روش رکوردهایی که قرار است در جدول درج شوند با استفاده از چندین Union به همدیگر پیوند داده می‌شوند.
INSERT INTO MyTable
SELECT 5,'S2-1'
UNION
SELECT 6,'S2-2'
UNION
SELECT 7,'S2-3'
UNION
SELECT 8,'S2-4'
GO

اما اگر دقت کنید توسط دستور بالا هر ۴ رکورد به یکباره در جدول درج شده است.

استفاده از Row Constructor 

این روش از SQL Server 2008 به بعد در سیستم قابل اجرا می‌باشد. در این حالت با استفاده از یک دستور Insert امکان درج همزمان چندین رکورد وجود خواهد داشت.
INSERT INTO MyTable VALUES
(۹, 'S3-1'),
(۱۰,'S3-2'),
(۱۱,'S3-3'),
(۱۲,'S3-4'),
GO
نحوه درج اطلاعات توسط این روش همانند روش Union بوده و رکوردها به یک‌بار در جدول درج می‌شوند.

چند نکته درباره استفاده از Row Constructor

  • کارایی این روش نسبت به روش‌های دیگر بالاتر می‌باشد.
  •  چنانچه یکی از رکوردهای موجود در مجموعه دارای خطا باشد. با استفاده از این دستور چیزی در جدول درج نخواهد شد.

چه رتبه ای می‌دهید؟

میانگین ۵ / ۵. از مجموع ۲

اولین نفر باش

title sign
دانلود مقاله
درج چند رکورد در یک جدول
فرمت PDF
2 صفحه
حجم 1 مگابایت
دانلود مقاله
title sign
معرفی نویسنده
مسعود طاهری
مقالات
25 مقاله توسط این نویسنده
محصولات
61 دوره توسط این نویسنده
مسعود طاهری

مسعود طاهری مدرس و مشاور ارشد SQL Server & BI ،  مدیر فنی پروژه‌های هوش تجاری (بیمه سامان، اوقاف، جین وست، هلدینگ ماهان و...) ، مدرس دوره‌هــای SQL Server و هوش‌تجاری در شرکت نیک‌آموز و نویسنده کتاب PolyBase در SQL Server

پروفایل نویسنده
title sign
دیدگاه کاربران

هر روز یک ایمیل، هر روز یک درس
آموزش SQL Server بصورت رایگان
همین حالا فرم زیر را تکمیل کنید
دانلود رایگان جلسه اول
نیک آموز علاوه بر آموزش، پروژه‌های بزرگ در حوزه هوش تجاری و دیتا انجام می‌دهد.
close-link
وبینار رایگان ؛ Power BI کلید رقابت شما در دنیا داده‌ها      چهارشنبه 12 اردیبهشت ساعت 15
ثبت نام رایگان
close-image