পরিস্থিতি
আমার কাছে পোস্টগ্রেসকিএল ডাটাবেস রয়েছে যা পণ্যের বৈকল্পিকের একটি তালিকা রয়েছে, যা অংশ নম্বর ছাড়াই স্বয়ংক্রিয়ভাবে পপুলেশিত হয়েছে। আমি প্রতিটি পণ্যটির বৈকল্পিকের জন্য পার্ট সংখ্যা তৈরি করতে কিছু সূত্র চালানোর জন্য টেবিলটি রফতানি করেছি। এটি আমাকে প্রাসঙ্গিক রেকর্ড আইডি এবং সম্পর্কিত অংশ নম্বরযুক্ত একটি সারণী দিয়েছে gave
আমি যা অর্জন করার চেষ্টা করছি
যেহেতু আমার কাছে আমার টেবিলটি নেই এমন তথ্য রয়েছে যা আমি অনুপস্থিত, আমি কীভাবে সেই তথ্য পোস্টগ্রিস্কল টেবিলটিতে ফিরে পাব?
পোস্টগ্র্যাস্কিল টেবিলের থেকে নমুনা ডেটা [product_prodct]
id create_date weight default_code product_templ_id ...
1 2016-12-15 18:57 0 000-000000-000 1 ...
2 2016-12-16 19:00 0 000-000000-000 2 ...
3 2016-12-16 20:42 0 000-000000-000 31 ...
4 2016-12-16 20:43 0 000-000000-000 31 ...
5 2016-12-16 20:44 0 000-000000-000 31 ...
6 2016-12-16 20:45 0 31 ...
... ................ ... .............. 31 ...
1603 2016-12-16 21:51 0 31 ...
1604 2016-12-16 21:52 0 31 ...
গণনা করা অংশের নমুনার তালিকা
id default_code
6 000-000000-000
... ..............
1604 000-000000-000
আমি কি চেষ্টা করেছি
আচ্ছা, আমি সেটআপ মাইক্রোসফট এক্সেস 2010 ডাটাবেসের সাথে একটি ODBC সংযোগ, টেবিল লিঙ্ক আমি ফিল্টার product_templ_id
ক্ষেত্র ও অনুসারে সাজানো id
অর্ডার কি আমি আমার এক্সেল স্প্রেডশীট ছিল মেলে। তারপরে, আমি default_code
কলামটি থেকে অংশের সংখ্যাগুলি অনুলিপি করেছি এবং প্রারম্ভিক পর্যায়ে আটকানোর চেষ্টা করেছি, তবে আমি খুব বেশি তথ্য আটকানোর চেষ্টা করছি বলে উল্লেখ করে একটি ত্রুটি পেয়েছি। আমি জড়ো হয়েছি, অ্যাক্সেসটি ক্লিপবোর্ডের সামগ্রীগুলিকে একক ঘরে আটকে দেওয়ার চেষ্টা করছিল। আমি যে আচরণের জন্য আশা করছিলাম তা নয়।
এর চেয়ে ভাল রুট কী?
এই নির্দিষ্ট পণ্যটির 1440 ভেরিয়েন্ট রয়েছে যার প্রত্যেকটির নিজস্ব অংশ নম্বর এবং বিওএম রয়েছে। আমি লাইন দিয়ে সমস্ত লাইন তৈরি করতে আমার সময় ব্যয় করতে চাই না। আমি সবসময় লোকদের বলি যে ডেটা ডেটা, এবং আপনি ডেটা দিয়ে যে কোনও কিছু করতে পারেন। এটি কীভাবে কাজ করার তা কেবল বিষয়।
--EDIT--
আমি আমার টেবিলটি পিজএডমিন থেকে রফতানি করতে পারি তবে কিছু কারণে যখন আমি আমদানির চেষ্টা করি তখন কিছুই ঘটে না।
ফলস্বরূপ আমি নিম্নলিখিত আদেশটি চেষ্টা করেছিলাম:
COPY product_product (default_code) from '/csv/file/location/file.csv' CSV HEADER delimiter ';' null '/n';
যার ফলস্বরূপ:
ERROR: extra data after last expected column
CONTEXT: COPY product_product, line 2: "203;000-000000-000"
আমি চিত্রিত করছি, ঠিক আছে, আমি একটি ক্ষেত্র উল্লেখ করেছি, তবে আমার সিএসভিতে দুটি ক্ষেত্র রয়েছে। এটি কারণ আমি নিশ্চিত করতে চাই যে আমদানি করা default_code
ক্ষেত্রটি সঠিক রেকর্ডের সাথে যুক্ত।
এরপরে, আমি চেষ্টা করেছি:
COPY product_product FROM '/csv/file/location/file.csv' CSV HEADER delimiter ';' null '\n';
এর ফলাফল:
ERROR: duplicate key value violates unique constraint "product_product_pkey"
DETAIL: Key (id)=(2) already exists.
সুতরাং এখন, আমি অঙ্কিত আমি পাশাপাশি টেবিল ফেলে এবং এটি পুনর্নির্মাণ করতে পারে। দুর্ভাগ্যক্রমে এই টেবিলটির সাথে নির্ভরতা সেটআপ রয়েছে, তাই এটি বাদ দেওয়া যায় না।
আমি যদি পোস্টগ্রেস্কলএল একটি রেকর্ড মান সম্পাদনা করতে জানতাম তবে আমি সেই অনুযায়ী সমস্ত 1440 রেকর্ড সম্পাদনা করার জন্য প্রয়োজনীয় কমান্ড উত্পন্ন করতে একটি স্ক্রিপ্ট লিখতে পারি।