আমি কীভাবে এসএসআইএস এক্সেল সংযোগ ব্যবস্থাপক ত্রুটি 0xC0209303 সমাধান করতে পারি?


9

আমি একটি এসএসআইএস প্যাকেজ তৈরি করেছি যা একটি এসকিউএল সার্ভার সারণীতে একটি এক্সেল ফাইল আমদানি করে।

এসএসআইএস প্যাকেজটি কোনও সমস্যা ছাড়াই চলে যখন আমি আমার মেশিনে স্থানীয়ভাবে এটি চালিত করি তবে আমি যখন এটি সার্ভারে চালিত করি যেখানে প্যাকেজটি নির্ধারিত হবে আমি নীচের ত্রুটিটি পেয়েছি (একটি পাঠ্য ফাইল থেকে আমি এসএসআইএস লগিং ব্যবহারে ত্রুটিগুলি আউটপুট করছি)।

গবেষণার পরে, আমি কেবলমাত্র সুপারিশগুলি পেয়েছি তা ছিল রান 64 বিটআরটাইম সম্পত্তিটি মিথ্যা হিসাবে সেট করা যা আমি করেছিলাম তবে এখনও ভাগ্য হয়নি। আমি সন্দেহ করি এটিই আমার ত্রুটি সৃষ্টি করছে যদিও ত্রুটিটি 64 বিট সম্পর্কিত কিছু নির্দিষ্ট করে না (যেমনটি আমি পেয়েছি নিবন্ধগুলির ক্ষেত্রে)।

আমি আরও ভেবেছিলাম যে এটি হতে পারে যে সার্ভারে উপযুক্ত এক্সেল ড্রাইভার নেই তবে আমি মনে করি না যে এটি হয় কারণ সাধারণত ত্রুটি বার্তায় ড্রাইভারদের নিবন্ধিত না হওয়া সম্পর্কে কিছু বলা হত।

আমার বর্তমানে সার্ভারে রিমোটের অ্যাক্সেস নেই। আমি কেবল একটি ফোল্ডারে প্যাকেজটি আপলোড করতে পারি এবং তারপরে এটি কোনও অ্যাপ্লিকেশন দ্বারা চালিত হয় তবে কেবলমাত্র ত্রুটি বার্তাগুলি আমি দেখতে পাচ্ছি যা আমার তৈরি টেক্সট ত্রুটি লগতে রয়েছে।

এখানে চিত্র বর্ণনা লিখুন

ত্রুটি কোড DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER। সংযোগ ব্যবস্থাপক "কল্পনা" -এ অ্যাকুইয়ার সংযোগ পদ্ধতি কলটি ত্রুটি কোড 0xC0209303 সহ ব্যর্থ হয়েছে। AcquireConnication পদ্ধতি কলটি কেন ব্যর্থ হয়েছে এ সম্পর্কিত আরও তথ্যের সাথে এর আগে পোস্ট করা ত্রুটি বার্তা থাকতে পারে।

"এনভিশন" হ'ল আমার এক্সেল সংযোগ পরিচালকের নাম।

আমি এক্সেল ফাইল পাথ এবং সংযোগ স্ট্রিংটি এক্সপ্রেশন ব্যবহার করে পপুলেট করি।

সংযোগের স্ট্রিং এক্সপ্রেশনটি এর মতো দেখাচ্ছে:

"সরবরাহকারী = মাইক্রোসফ্ট.এসিই.ওএলডিবি .১২.০; ডেটা উত্স =" + @ [ব্যবহারকারী :: উত্সফিলিপথ] + "; প্রসারিত বৈশিষ্ট্য = \" এক্সেল 12.0 এক্সএমএল; এইচডিআর = ইয়েস \ ";"

এসএসআইএস প্যাকাকেজ উইন্ডোজ ব্যবহারকারীর নাম / অ্যাকাউন্ট দ্বারা কার্যকর করা হয়। আমি মনে করি এটি কোনও ওয়েব পরিষেবাদির অ্যাকাউন্ট হতে পারে। (BDS_sprtIIS)

প্যাকেজটি নিযুক্ত করা হবে এমন প্রকৃত সার্ভারে নয় তবে কেবলমাত্র আমার স্থানীয় মেশিনে কাজ করা প্যাকেজটির এই সমস্যাটি কীভাবে সমাধান করবেন সে সম্পর্কে কারও কাছে কি কোনও সমাধান বা পরামর্শ রয়েছে?

আমি অন্য ফোরামে নীচের উত্তরটি পেয়েছি, এটি কি আমার সমস্যাগুলির কারণ হয়ে উঠতে পারে? তারা মূলত বলছেন যে এক্সেল সংযোগ ব্যবস্থাপক কোনও কারণে ব্যবহারকারীদের টেম্প ফোল্ডারটি অ্যাক্সেস করার চেষ্টা করে এবং যদি সেই ফোল্ডারে অ্যাক্সেস না থাকে তবে এটি ব্যর্থ হবে:

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/da77919c-0161-4eb5-bf89-7107d839435a/the-acquireconnection-method-call-to-the-connection-manager-excel-connection- ম্যানেজার-ব্যর্থ-সঙ্গে? ফোরাম = sqlintegrationservices

আমি আরও লক্ষ্য করেছি যে মাইক্রোসফ্ট.জেট.ওইলডিবি .৪.০ ড্রাইভার লগ ইন করা ব্যবহারকারীর প্রোফাইলের নীচে টেম্প ডিরেক্টরিটি পড়ার চেষ্টা করবে।

... আমরা নিম্ন স্তরের ডোমেন অ্যাকাউন্ট ব্যবহার করে আমাদের এসকিউএল এজেন্টগুলি পরিচালনা করি এবং একটি প্রক্সি অ্যাকাউন্ট ব্যবহার করে আমাদের এসএসআইএস প্যাকেজগুলি পরিচালনা করি। আপনারা ঠিক বলেছেন যে প্রোকমন এটি আমার জন্যও নিশ্চিত করেছে। আমি প্রোফাইলের টেম্প ডিরেক্টরিতে প্রক্সি অ্যাকাউন্টের অধিকার দিয়েছি (সি: \ ডকুমেন্টস এবং সেটিংস \ এসকিএলজেন্টডোমেন অ্যাকাউন্টস ount লোকাল সেটিংস \ টেম্প) এবং এটি কার্যকর হয়েছে!

আমি এসকিউএল সার্ভার জবস বা প্রক্সি অ্যাকাউন্ট ব্যবহার করছি না। প্যাকেজটি সম্ভবত উইন্ডো অ্যাকাউন্ট দ্বারা একটি কমান্ড লাইন স্ক্রিপ্টের মাধ্যমে সম্পাদিত হয়।

উইন্ডোজ অ্যাকাউন্টটিতে ফাইলে অ্যাক্সেস রয়েছে তবে আমি নিশ্চিত নই যে এটির "টিএমপি" ফোল্ডারে এটি অ্যাক্সেস রয়েছে কিনা (যা আমি প্যাকেজে কখনই উল্লেখ করি না তাই কেন জানি না যে কেন এই ফোল্ডারে অ্যাক্সেস থাকা দরকার) ...

উত্তর:


8

2 টি সমস্যা ছিল যা সার্ভারে প্যাকেজটি চালানো থেকে বিরত ছিল। নীচে 2 টি সমস্যা এবং আমি খুঁজে পেয়েছি সমাধানগুলি।

  1. প্যাকেজটি এমন একটি অ্যাপ্লিকেশন দ্বারা কার্যকর করা হয় যা default৪-বিট ডিটিএক্সেক ইউটিলিটি ডিফল্টরূপে ব্যবহার করে তবে এক্সেল সংযোগ ব্যবস্থাপকের মাধ্যমে এক্সেল ফাইলটি সঠিকভাবে অ্যাক্সেস করতে সক্ষম হওয়ার জন্য প্যাকেজটি ইউটিলিটির 32 বিট সংস্করণ ব্যবহার করে চালানো দরকার।

    আমি একটি "র্যাপার" এসএসআইএস প্যাকেজ তৈরি করেছি যা একটি এক্সিকিউট প্রক্রিয়া টাস্ক ব্যবহার করে যা 32-বিটকে (64 বিটের পরিবর্তে) ডিটিইএক্সিক ইউটিলিটি কল করে এবং মূল প্যাকেজটি খোলার জন্য আদেশটি পাস করে।

    প্রক্রিয়া টাস্ক কার্যকর করুন

  2. আমারও মাইক্রোসফ্ট অ্যাক্সেস ডেটাবেস ইঞ্জিন 2010 পুনরায় বিতরণযোগ্য এর 32-বিট সংস্করণ ইনস্টল করা প্রয়োজন ।

আরও পড়া:

Microsoft.ACE.OLEDB.12.0 নিবন্ধিত নেই (স্ট্যাক ওভারফ্লো)


2

32-বিট অ্যাক্সেস ইঞ্জিন ইনস্টল করা এবং 32-বিট মোডে চালানো আমার পক্ষে কাজ করেছে!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.