Skip to main content

طریقه ایمپورت اطلاعات

Importing data

در این درس تخصصی، فرایند import داده‌ها در SQL Server به‌طور جامع بررسی می‌شود؛ ابتدا با اجرای یک query، یک جدول موقت به نام HumanResources.Department_Temp ایجاد می‌گردد تا داده‌های خوانده شده از یک Flat File Source در آن ذخیره شود. سپس با انتخاب دیتابیس AdventureWorks2014 و راه‌اندازی SQL Server Import and Export Wizard، داده‌ها از فایل متنی خوانده شده و از طریق مرحله Edit Mappings، ستون‌های منبع (مانند DepartmentID، Name و Group Name) به صورت دقیق با ستون‌های مقصد (مانند DepartmentID، Department Name و Department Group Name) مطابقت داده می‌شوند. در پایان، با اجرای موفق عملیات و بررسی صحت انتقال داده‌ها از طریق Select Top 1000 Rows، این درس زمینه‌ای تخصصی را برای آشنایی عمیق با مراحل import و تنظیم mapping در SQL Server فراهم می‌کند تا متخصصان بتوانند به‌راحتی این فرایند را در پروژه‌های واقعی خود به کار گیرند.

لینک کمکی (official link) – آموزش Import Data در SQL Server: راهنمای کامل Import and Export Wizard

حالا اجازه بدین که به IMPORT کردن بعضی داده ها یک نگاهی بندازیم. در ابتدا، من میخوام یک جدول خالی جدید ایجاد کنم تا بتونم داده رو در اون IMPORT و وارد کنم. من بعضی کدها رو برای شما در فایل تمرینی تون طبقه بندی کردم. ما پیش میریم و همه اونها رو میگیریم و کپی میکنیم و در یک query window جدید پیست میکنیم. همونطور که می بینید اون فقط یک جدول جدید با نام  HumanResources.Department_Tempرو برامون ایجاد میکنه. بنابراین این یک جدول موقت هست تا با استفاده از اون بتونیم داده های import شده رو درش نگهداری کنیم. پیش میریم و با زدن روی گزینه Execute اون رو اجرا میکنیم.

اون در قسمت Messages میگه که دستورات با موفقیت انجام شد. این خوبه و ما مثل همیشه لیست جداول مون رو رفرش میکنیم و ما باید اون Table جدید رو در اینجا ببینیم. HumanResources.Department_Temp، حالا برای import کردن، روی  AdventureWorks2014کلیک راست میکنیم، مجدد یادآوری می کنم که حتما باید روی دیتابیس راست کلیک کرد، و بعدش هم از این منو، روی tasks و بعد هم روی import data میرم، و انتخابش می کنم و دوباره، اون پنجره،   SQL Server Import and Export Wizard رو باز میکنه. در صفحه اول، من روی next کلیک راست میکنم. برای قسمت data source ام، از همون فرمت text file ای که در ویدئوی آموزشی قبلی استفاده کردم، میخوام مجدد استفاده کنم.

بنابراین برای Data Source، ما از یک Flat File Source استفاده میکنیم و برای file name، روی دکمه brows کلیک میکنم. روی فایلی که از قبل ایجاد شده میرم، و بعد از انتخاب اون روی دکمه open میزنم تا سفارشی بشه. در سمت چپ، این رو هم بدونید که من از همین جا می تونم از پانل Data source روی Columns کلیک کنم و میتونم ستونهایی که برای من در دسترس هست رو ببینم و همه ی اونها رو خوب نگاه کنم. بنابراین روی دکمه next کلیک میکنم. حالا باید یک مقصد یا Destination انتخاب کنم. مقصدم یک اس کیو ال سرور محلی هست. ما با استفاده از sql server native client 11.0 ارتباط رو برقرار میکنیم و دوباره، اون به صورت اتوماتیک server name و database رو می بینیم که برامون پر کرده.

بنابراین من میتونم روی next کلیک کنم. سپس اون از من یک Source و یک Destination میخواد. Source که می دونیم یک text file هستش. اون میگه که میخواد برای مقصد یک جدوله [dbo].[DepartmentExport]. رو استفاده کنه و اگه از اول این آموزش یادتون باشه این نام جدولی نیست که من میخوام أزش برای وارد کردن اطلاعاتم به داخل اون استفاده کنم. بنابراین روی قسمت کشویی کلیک میکنم و بجای این جدول پیشفرض HumanResources.Department_Temp. رو که در کوئری این ویدئوی آموزشی چند لحظه پیش تعریف کردیم رو در اینجا قرار میدم. بنابراین اون میتونه مقصد جدول من باشه و سپس در پایین، من میخوام روی Edit Mappings کلیک میکنم.

خب، زمانی که ما در این پنجره به mappings نگاه میندازیم، ستونها رو در فهرست Source و در فهرست Destination میبینیم و ما میبینیم که چطور با همدیگه در ارتباط هستن. دستگاه یک ستونی رو که در فهرست source، DepartmentID نامیده میشه و یک ستونی رو که در فهرست Destination، DepartmentID نامیده میشه، رو پیدا میکنه. بنابراین دستگاه فرض میکنه من داده رو میخوام از ستون  Sourceبه ستون Destination، import کنم. در این مورد، یک فرض دقیق هست و اگه بخوام تغییرش هم بدم میتونم، اما در واقع نمیخوام، چون من میخوام داده رو به ستون DepartmentID، import کنم.

برای دو ردیف بعدDestination ، ستونهایی رو که با نام اونها دقیقا مطابقت داشته باشه، نداره. به طوری که می بینیم Source یک ستونی داره که Name نامیده میشه، ولی می بینید که این ستون Destination ای رو نداره و واژه ignore رو می بینیم. بنابراین با توجه به این موضوع متوجه میشیم که دستگاه به صورت اتوماتیک یک Mapping رو ایجاد نکرده. ما باید به صورت دستی، با انتخاب درست Destination، mapping رو ایجاد کنیم. بنابراین اونچه که در Source، با نام name هست، من میخوام معادل اون رو در Destination، Department Name نامگذاری کنم و اونچه که در source، Group Name  هست، من میخوام که معادلش رو تبدیل به Department Group Name کنم.

بنابراین زمانی که همه ستون Destination من دارای مقدار و نگاشت شد، من روی دکمه اوکی کلیک میکنم و next. و من میرسم به برخی اطلاعاتی که میگه ماشین در حال رفتن به انجام بعضی تبدیل داده ها است، تبدیل هایی که برای خانا شدن در محیط اس کیو ال باید اعمال بشه. و بعضی از warning ها میگن که ممکنه تبدیلات با شکست مواجه بشه. اما ما پیش میریم و روی دکمه next کلیک میکنیم. دوباره، من با پیش فرض Run Immediately. به منظوره اجرای فوری جلو میرم و روی دکمه next کلیک میکنم و در صفحه خلاصه شده کارهایی که در این ویزارد انجام دادیم نهایتا، بر روی finish کلیک میکنم. تعداد زیاد چک مارکهای سبز میبینم و یکی هم بزرگتر از همشون اون بالا میبینم که میگه عمل موفقیت امیز بود و این خبر خوبیه!

بنابراین من  SQL Server Import and Export Wizardرو با زدن روی دکمه close میبندم و حالا اجازه بدین که ببینیم در این جدول که در ابتدای ویدئوی آموزشی ایجادش کردیم چه چیزهایی هست. به این منظور من روی HumanResources.Department_Temp راست کلیک میکنم و Select Top 1000 Rows رو انتخاب میکنم. داده رو در جدول میبینم و اون دقیقا با اونچه که در text file، import شون کردیم، مطابقت داره. بنابراین عملیات مون با موفقیت انجام شد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دوره ها
درس ها
Tha PMIS
طهاکو من
0