প্রশ্ন কমান্ড প্রম্পট মাধ্যমে Oracle SQL স্ক্রিপ্ট এবং sqlplus.exe থেকে প্রস্থান করুন


আমি একটি উইন্ডোজ কমান্ড প্রম্পট মাধ্যমে এসকিউএল প্লাস মাধ্যমে একটি ওরাকল স্ক্রিপ্ট চালাতে চাই। স্ক্রিপ্টটিতে একটি "প্রস্থান" কমান্ড থাকে না, তবে আমি এখনও এসকিউএল প্লাসটি প্রস্থান করতে চাই, স্ক্রিপ্টটির সমাপ্তির পরে কমান্ড প্রম্পটে নিয়ন্ত্রণ ফিরে আসি। আমার লক্ষ্য এই কাজ করা হয় বিনা স্ক্রিপ্ট পরিবর্তন। এটা কি সম্ভব?


101
2017-09-22 23:33


উত্স


আপনি কি "sqlplus .... <scriptname" বা "sqlplus ... @ scriptname" দিয়ে এটি কার্যকর করছেন ?? ইউনিক্সে আপনি যা করছেন তার উপর নির্ভর করে আমি বিভিন্ন আচরণ খুঁজে পাচ্ছি। - runrig


উত্তর:


ব্যাচ ফাইলে এই কমান্ডটি ব্যবহার করার আরেকটি উপায় হল:

echo exit | sqlplus user/pass@connect @scriptname

128
2017-09-23 12:28



কুল! আপনি কি জানেন যে "প্রস্থান" sqlplus সেশনে যোগ করা হয়?
Sqlplus কমান্ড স্ক্রিপ্টটি চালায় তারপর মান ইনপুট থেকে আরো কমান্ড পড়ার চেষ্টা করে। এই পাইপলাইনের সাথে, স্ট্যান্ডার্ড ইনপুট থেকে পড়াটি ইকো কমান্ড থেকে "প্রস্থান" স্ট্রিংটি পড়বে, যার ফলে sqlplus প্রস্থান করতে পারে। - Dave Costa
চমৎকার - এই আমি কি খুঁজছেন ছিল ঠিক। ধন্যবাদ! - JoshL
ইউনিক্স (পিএস-আইফ) এর প্রোসেস তালিকার মাধ্যমে আপনি আপনার ব্যবহারকারীর নামটি প্রকাশ করুন সাবধান থাকুন তবে আমি প্রায় নিশ্চিত যে এটি উইন্ডোজ - Robert Merkwürdigeliebe
stackoverflow.com/questions/1639704/... এবং dba.stackexchange.com/a/65064/16892 কমান্ড লাইনের পাসওয়ার্ড ব্যবহার করার জন্য কিছু উপায় বর্ণনা করুন ... - rogerdpack


আমি এটি সর্বোত্তম সমাধান খুঁজে পেয়েছি এবং এটি একটি টার্মিনালে বা স্ক্রিপ্টের মধ্যে কাজ করে:

echo @scriptname | sqlplus username/password@connect

12
2017-10-26 12:21



যদিও এটি টেকনিক্যালি প্রশ্নের উত্তর দিতে পারে, এটি বেশিরভাগ উত্তরগুলির একটি সদৃশ এবং সামান্য মান যুক্ত করে। এছাড়াও, এই কমান্ডগুলি কী করছে তা ব্যাখ্যা করলে এটি অন্যদের সহায়তা করবে। ধন্যবাদ! - Chris S
এটি আমার জন্য কাজ করে এবং আমি উপরের উত্তরের চেয়ে এটি আরো মার্জিত মনে করি কারণ এটি 'প্রস্থান' এড়ানো থেকে বিরত থাকে। - Bogdan Calmac


ব্যবহারকারী তথ্য এবং প্রস্থান লুকানোর সবচেয়ে ভাল উপায় হল:

exit | sqlplus -S user/pwd@server @script.sql

exit sqlplus আউটপুট এটি সরবরাহ করা বাধ্যতামূলক সরবরাহ করা হয়। -S স্ক্রিপ্টে অন্যান্য সার্ভার আউটপুট তারপর sql ক্যোয়ারী suprresses।


12
2018-03-18 21:20



Ssh ব্যবহার করা হলে প্রস্থান করতে হবে প্রস্থান করার পরিবর্তে | যাতে এটি আপনার এসএসএস অধিবেশন বন্ধ করে না, যদি ফাইলটিকে প্রস্থান করার পরে এটিতে প্রস্থান করা হয় বা এতে ছেড়ে দেওয়া হয়। ফাইল খুব পাওয়া যায় না যদি এটি কাজ করে। - Karl Henselin


আপনার সমস্যাটি এসকিএলএল ফাইলের সাথে হতে পারে তা উপলব্ধি করে দেখুন, sqlplus প্রস্থান করার জন্য বলা দরকার। আমি এই ভাবে করি:

* দ্বৈত থেকে নির্বাচন করুন;

প্রস্থান;
/

(স্ল্যাশটি গুরুত্বপূর্ণ। এটি sqlplus কে এটির উপরে স্টেটমেন্ট (গুলি) চালানোর জন্য বলে।)


11
2017-09-23 16:04



মনে রাখবেন ডেভ কোস্টা এর উত্তরও খুব কাজ করে: sqlplus কমান্ডে প্রস্থান প্রস্থান (বা প্রস্থান)।
ধন্যবাদ / কৌশল, আমি এই তথ্য খুঁজছেন ছিল!
স্ল্যাশ মানে এসকিউএল বাফারে কি চালানো হয়। এটি একাধিক বিবৃতি কার্যকর করে না এবং এটি "প্রস্থান" মত SQLPlus নিয়ন্ত্রণ কমান্ডগুলি চালানো প্রয়োজন নয়। যদি আপনি একটি ইন্টারেক্টিভ SQLPlus প্রম্পটে <Enter> টাইপ করুন "টাইপ করেন তবে তা অবিলম্বে প্রস্থান করবে। - Dave Costa


আপনি আপনার শেল স্ক্রিপ্টে এটি করতে পারেন।

sqlplus /nolog <<EOF
connect user/pass
@run_some_file.sql
select * from dual;
EOF

আপনি "পালাবার প্রয়োজন হতে পারে"; সঙ্গে একটি \.


6
2017-09-23 12:33





এটার মত:

sqlplus / nolog ব্যবহারকারীর নাম / পাসওয়ার্ড @ tnsname @ filename

যদি আপনি এটি একটি ব্যাচ ফাইলে রাখেন তবে নিয়ন্ত্রণটি অনুসরণ করে বিবৃতিটি চালিয়ে যাবে।

সম্পাদনা করুন: আমার খারাপ, আবার / nolog পতাকা দিয়ে চেষ্টা করুন


4
2017-09-22 23:43



দুর্ভাগ্যবশত, এই কাজ করে না। যখন আমি ব্যাচ ফাইলটি চালাতে পারি, SqlPlus এসকিউএল এ অপেক্ষা করে> কমান্ড প্রম্পটে নিয়ন্ত্রণের পরিবর্তে ব্যবহারকারী ইনপুটের জন্য প্রম্পট। - JoshL
দুঃখিত, এই কাজ করে না। / nolog sqlplus লগিং ছাড়া শুরু করতে পারবেন। এটি সম্পূর্ণ হলে একটি স্ক্রিপ্ট প্রস্থান সঙ্গে এটি করার কিছুই নেই। - JoshL
হুম, আমি পরিবেশ পার্থক্য সম্পর্কে আশ্চর্য শুরু করছি। আমি এই ভাবে sqlplus ব্যবহার করে যে অনেক ব্যাট স্ক্রিপ্ট আছে।
ক্রিস, আপনি একটি কাজের উদাহরণ দিতে পারে? "ডুয়াল থেকে বাছাই করুন" বা কিছু নির্বাচন করুন এমন কিছু সহজ ... আমি কোনও উপকারে আপনার পরামর্শগুলি চেষ্টা করার জন্য উদাহরণ তৈরি করেছি। উইন্ডোজ এ মনে রাখবেন যে। - JoshL
জোশ, নিচে নতুন উত্তর দেখুন।


হ্যাঁ, এটি সম্ভব - একটি স্ক্রিপ্ট স্ক্রিপ্ট তৈরি করুন যা সঠিকভাবে SQLPlus সেট আপ করে, আপনার স্ক্রিপ্টটি অন্তর্ভুক্ত করে (অর্থাত্। @YourTargetScript.sql), এবং তারপর একটি প্রস্থান করে।

যে বলেন, আমি এই পদ্ধতির সব সুপারিশ করবেন না - SQLPlus প্রোগ্রাম্যাটিক ব্যবহারের জন্য একটি মহান অনেক গোচছা আছে; ওরেকল ব্যবহার করে অতীতে শেল স্ক্রিপ্টগুলি লেখার সময়, আমি এটির চারপাশে একটি পাইথন র্যাপার তৈরি করেছি (স্টেডাউট / স্টেডারআর, নেটিভ সিএসভি আউটপুট সাপোর্ট এবং অন্যান্য অন্যান্য জিনিসগুলির মধ্যে আরও বেশি যুক্তিসঙ্গত ত্রুটি-হ্যান্ডলিং আচরণ, আউটপুট সেন বিচ্ছেদ), এবং এটি কাজ করেছে অনেক ভাল.


3
2017-09-22 23:40



অন্য কোন প্রোগ্রামের সাথে আমি আপনার সাথে একমত। কিন্তু আমি দেখেছি যে এসকিউএলপ্লাস আমাকে একটি খারাপ প্রশ্নে দরকারী প্রসঙ্গ দিয়েছে যে অন্য পরিবেশগুলি (আমার ক্ষেত্রে পার্ল / ডিবিআই / ডিবিডি :: ওরাকল) নয়। আপনি সতর্কবার্তা ত্রুটি হ্যান্ডলিং করছেন, যে ব্যথা মূল্য হতে পারে।
এছাড়াও, সার্ভারে আপনার কাছে কতটা নিয়ন্ত্রণ রয়েছে তার উপর নির্ভর করে আপনি শেল এবং SQLPlus এর পরে আরও কিছু উপকারিতা গ্রহণ করতে সক্ষম হবেন নাও। Solaris, HP / UX, AIX এবং অনেক অনুরূপ ব্যবহার চলাকালীন প্রচুর স্টিগিয়াম ইউনিক্স দোকানগুলি খুব কমই ইনস্টল করে এবং আপনাকে বাক্সে অন্য কোনও ইনস্টল করতে দেয় না। মনে রাখবেন যে কখনও কখনও এটির একটি কার্যকারিতা আপনার অ্যাপ্লিকেশনের সাথে ন্যূনতম ইন্টারপ্রেটার বান্ডিল করা হয়। - ConcernedOfTunbridgeWells


স্ক্রিপ্টে আপনার পাসওয়ার্ড অন্তর্ভুক্ত করার নিরাপত্তা সম্পর্কে চিন্তিত ব্যক্তিদের জন্য, AskTom এর "অনির্দিষ্টভাবে সনাক্ত হওয়া" সম্পর্কে একটি নিবন্ধ আছে http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:142212348066


1
2017-07-16 19:38



এই তাত্ত্বিকভাবে প্রশ্নের উত্তর দিতে পারে, এটা অগ্রাধিকার হবে এখানে জবাবের প্রয়োজনীয় অংশগুলি অন্তর্ভুক্ত করতে এবং রেফারেন্সের লিঙ্ক সরবরাহ করুন। - Scott Pack


আপনার এসকিউএল স্ক্রিপ্টে এক্সিট যোগ করুন। এখানে উদাহরণ আমার test.bat ফাইল নিম্নলিখিত আছে:

sqlplus ব্যবহারকারী / pwd @ সার্ভার @ test.SQL> myLOG.LOG

আমার test.sql ফাইল নিম্নলিখিত আছে: * দ্বৈত থেকে নির্বাচন করুন; প্রস্থান


0
2018-06-19 20:40



এটি ঠিক আছে, তবে প্রস্থানটি অন্তর্ভুক্ত করার জন্য স্ক্রিপ্ট সংশোধন না করে এটি করার প্রয়োজনীয়তা পূরণ করে না। এই স্ক্রিপ্টগুলি এসকিউএল প্লাস থেকে একটি DBA দ্বারা চালানো যেতে পারে, তবে এটি একটি ব্যাচ ফাইল থেকেও চালানো যেতে পারে। - JoshL


প্রস্থান | SQLPLUS / @ @

এটি সঠিক সমাধান, আমি এটি কাজ করার চেষ্টা করেছি


0
2017-11-20 06:57