PDA

View Full Version : duplicate کردن یک فایل متنی بسیار بزرگ



ashanet
جمعه 07 شهریور 1393, 13:12 عصر
با سلام و احترام خدمت همه دوستان گرامی
یه سوال داشتم از محضرتون
یه برنامه دارم که میاد فایل های اکسل رو می گیره و پردازش مورد نظر من رو انجام می ده .فایل من حاوی 10 ملیون رکورد هست که به فرض مثال به این صورت داره داخل یک فایل متنی ذخیره می شه.


نام

نام خانوادگی

کد پرسنلی



هادی

سعادتی

123456789



علیرضا

محمدی

987654321




و من خروجی این نرم افزار رو داخل mysql ایمپورت می کنم اما با توجه به این که فیلد نام یه فیلد کلید هست به دلیل تکراری بودن برخی رکورد ها اجازه ایمپورت رو بهم نمی ده .
از دوستان راهنمایی می خواستم که چطور این فایل متنی رو پردازش کنم و همه کد های پرسنلی بچرخه و کل خطی که کد پرسنلی برابر داره رو حذف کنه.
ممنونم

plus
جمعه 07 شهریور 1393, 14:14 عصر
آیا mysql این امکان رو نداره که شما برای رکوردهای import شده یک فیلد جدا هم بگذاری و به عنوان Id معرفی ش کنی؟
و یا اینکه نمیشه بعد از import برای جدول فیلد کلید تعریف کنی؟
یک راه دیگه میتونه این باشه که شما با باز کردن فایل و پیمایش تک تک سطر ها، به ابتدای هر سطر 1 شماره اضافه کنید.و بعد موقع import در دیتابیس، این فیلد جدید روبه عنوان کلید معرفی کنید.بعد از import میتونید با استفاده از دستورات SQL، خیلی راحت تر رکورد های با کد پرسنلی تکراری رو حذف کنید و فیلد جدیدی که اضافه کردین رو حذف کنید و کد پرسنلی رو کلید کنید.

ashanet
جمعه 07 شهریور 1393, 14:18 عصر
سلام مجدد

مشکلمو حل کردم اما نه سمت سی شارپ توی کد های پی اچ پیم درست کردم.

من اومدم موقع insert کردن duplicate کردم و مشکلم حل شد.

ashanet
جمعه 07 شهریور 1393, 14:21 عصر
plus عزیز ممنونم بابت پاسختون اما چون Unique هست فیلد هام این امکان وجود نداشت.اما چرا بزارم 10 ملیون داده که الان نزدیک به 3 ملیونش تکراری بود وارد دیتابیس بشه و بعد فیلتر کنم.الان به راحتی موقع فراخوانی فایلم و موقع insert کردن فیلتر می کنم و خیلی خیلی راحت فراخوانی شد و ایمپورت شد.