এসকিউএল সার্ভারে একটি "অন্তর্ভুক্ত ফাইল" এর ধারণা আছে?


19

আমার কাছে স্ক্রিপ্টগুলির একটি সেট রয়েছে যা নির্দিষ্ট ক্রমে চালানো দরকার। আমি একটি "মাস্টার ফাইল" তৈরি করতে চাই যা অন্য সমস্ত ফাইল এবং তাদের সঠিক ক্রমের তালিকা করে। মূলত সি ++ বা এএসপি / ভিবিএস স্ক্রিপ্ট থেকে অন্তর্ভুক্ত ফাইলের মতো।

উত্তর:


19

আপনি যদি এসকিউএলসিএমডি ব্যবহার করেন তবে :r FileNameআপনি একটি পৃথক। এসকিউএল ফাইল অন্তর্ভুক্ত করতে ব্যবহার করতে পারেন ।

: r ফাইলের নাম

বিবৃতি ক্যাশে ফাইলের নাম দ্বারা নির্দিষ্ট করা ফাইল থেকে অতিরিক্ত টি-এসকিউএল বিবৃতি এবং এসকিউএলসিএমডি কমান্ডগুলি পার্স করে। ফাইলনাম ভিজ্যুয়াল স্টুডিওর জন্য স্টার্টআপ ডিরেক্টরিটির সাথে সম্পর্কিত হয়। ব্যাচ টার্মিনেটরের মুখোমুখি হওয়ার পরে ফাইলটি পড়া এবং কার্যকর করা হয়। আপনি একাধিক: r কমান্ড জারি করতে পারেন। ফাইলটিতে সরঞ্জাম, বিকল্পগুলিতে সংজ্ঞায়িত ব্যাচ টার্মিনেটর সহ যে কোনও এসকিউএলসিএমডি কমান্ড অন্তর্ভুক্ত থাকতে পারে। আপনি ব্যবহার করতে পারেন: অন্য স্ক্রিপ্ট অন্তর্ভুক্ত করতে প্রাক-স্থাপনা বা পোস্ট-ডিপ্লোয়মেন্ট স্ক্রিপ্টে r।


আপনি কি এই বৈশিষ্ট্যটি নিজে ব্যবহার করছেন?
bernd_k

আমি এটি এসকিউএল সার্ভার ডেটা সরঞ্জাম প্রকল্পগুলিতে ভারী ব্যবহার করছি। আমি যখন পোস্ট স্ক্রিপ্ট হিসাবে চলমান নমুনা ডেটা সংগঠিত করার চেষ্টা করি তখন এটি সত্যিই সহায়তা করে।
জনাথন অ্যালেন

4

প্রাচীন সি প্রিপ্রোসেসরসগুলির অর্থে অবশ্যই না

  • নিজেই টি-এসকিউএল এর কোনও ধারণা নেই
  • এসএসএমএসের sqlcmd এবং sqlcmdmode আপেক্ষিক ফাইল পাথ পরিচালনা করে না
  • এসএসএমএসের sqlcmd এবং sqlcmdmode শর্তযুক্ত সহ সমর্থন করে না

যদি আপনার দেওয়া নিরঙ্কুশ পাথগুলির সাথে ফাইলগুলির একটি সেট থাকে যা আপনি কোনও শর্তহীন ক্রমে অন্তর্ভুক্ত করতে চান, আপনি কমান্ড লাইন টুলটি sqlcmd ব্যবহার করতে পারেন বা @mfredrickon এবং @Marian দ্বারা উল্লিখিত হিসাবে sqlcmdmode এ এসএসএমএস ব্যবহার করতে পারেন।


তবে আপনি যদি আপেক্ষিক পাথ চান বা শর্তসাপেক্ষে অন্তর্ভুক্ত থাকেন তবে আপনাকে কিছু র‌্যাপার কলিং এসকিউএলসিএমডি ব্যবহার করতে হবে (বা এর অবহেলিত পূর্বসূরিগুলির মধ্যে একটি আইএসকিএল বা ওএসকিএল)।

বর্তমানে এই পরিস্থিতিতে আমার চাকরিতে, আমি পুরাতন vbs এবং এইচটিএ কোড পর্যালোচনা এবং প্রসারিত করছি। আমি পুরোপুরি খুশি নই, তবে এটি একটি বাস্তববাদী সিদ্ধান্ত। এটি কাজ করছে এবং শেষ ব্যবহারকারী এইচটিএ জিইআইয়ের সাথে ঘরে রয়েছে এবং কোনও অতিরিক্ত সফ্টওয়্যার ইনস্টলেশন প্রয়োজন হয় না।

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

এমনকি পূর্ববর্তী সময়েও আমরা এই উদ্দেশ্যে সহজ সিএমডি ব্যাচ লিখেছিলাম, সেগুলির মধ্যে এখনও বেশিরভাগ ব্যবহার চলছে।

আমি অনুমান করি যে বর্তমান সরঞ্জামগুলি রয়েছে, বিশেষত লক্ষ্যবস্তু ওয়ার্কফ্লোগুলি, যা এখানে উপযুক্ত হতে পারে। আমি তাদের সাথে পরিচিত নই।


3

ম্যানেজমেন্ট স্টুডিওতে এসকিউএলসিএমডি মোডের পাশাপাশি , আপনি এসকিউএলসিএমডি ইউটিলিটিটি ব্যবহার করে আপনার সমস্ত এসকিউএল ফাইলগুলি সজ্জিত করতে এবং কল করার জন্য মাস্টার ফাইল হিসাবে ব্যাচ ফাইলটি ব্যবহার করতে পারেন ।

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


2

আমি সম্মত, একটি টি-এসকিউএল প্রিপ্রোসেসরের খারাপভাবে প্রয়োজন। আমি সি # তে নিজের একটি বিকাশ করেছি, যা আমাকে এক ঘন্টার মতো লেগেছিল। এসকিউএল স্ক্রিপ্টগুলি কার্যকর করার ক্রম নিয়ন্ত্রণের পাশাপাশি এটি আমাকে ম্যাক্রোগুলিও দেয় যা স্কেলার ইউডিএফগুলির মতো দেখায় এবং ব্যবহারে সুবিধাজনক হয় তবে ইনলাইন ইউডিএফগুলির মতো দ্রুত সঞ্চালন করে।


+1 - আমি বেশ কয়েকটি উপলক্ষে টেম্প্লেটিং সরঞ্জামগুলির সাহায্যে এই ধরণের কাজটি করেছি। স্কয়ার সিএমডিডিতে ভেরিয়েবল প্রতিস্থাপনের জন্য কিছু সুবিধা থাকলেও আমি এসএসএমএসের জন্য একটি শালীন ম্যাক্রো প্রসেসর প্লাগইন প্রয়োগকারী কাউকে নীচে একটি বড় চুম্বন দেব।
কনসার্নড

1
@ কে, আপনি কি এই বিষয়ে আরও কিছুটা ব্যাখ্যা করতে চান? গিথুবে সম্ভবত কিছু কোড পোস্ট করবেন?
ক্রেগ

2

আমি বার্ড_ কে এর উত্তর পছন্দ করি । আপনি কীভাবে আপনার স্ক্রিপ্টগুলির নাম দিয়েছেন, তার উপর নির্ভর করে কোনও সংখ্যার মতো এসকিউএল সার্ভার পাওয়ারশেল (এসকিউএলপিএস) ব্যবহার করা যেতে পারে যদি আপনি এসকিউএল সার্ভার ২০০ বা তারও বেশি চালিত হন। তারপরেও আপনি এসকিউএল 2005 ব্যবহার করলেও আপনি 2005 এর জন্য পাওয়ারশেল এবং এসএমও ব্যবহার করতে পারেন।

পার্শ্ব দ্রষ্টব্য: আমি বিশ্বাস করি যে এসকিউএলসিএমডি শেষ পর্যন্ত অবহেলিত তালিকায় রাখা হবে এবং এসকিউএলপিএস, পাওয়ারশেল দিয়ে প্রতিস্থাপন করা হবে।

পাশাপাশি আরও কয়েকটি অপশন রয়েছে।

  1. এসকিউএল এজেন্ট কাজের পদক্ষেপ হিসাবে প্রতিটি স্ক্রিপ্ট সেটআপ করুন। তারা কার্যকর করা হয় এমন আদেশটি সেট করতে পারেন।
  2. প্রতিটি ফাইল কল করার জন্য একটি এসএসআইএস প্যাকেজ তৈরি করুন। এটি কিছুটা বেশি নিয়ন্ত্রণ সরবরাহ করতে এবং আরও কিছুটা লগিংয়ের বিকল্পগুলি সরবরাহ করতে পারে। আমি এই পদ্ধতিটি পছন্দ করি যদি পরবর্তী স্ক্রিপ্ট কার্যকর করার আগে কোনও স্ক্রিপ্টের ফলাফল যাচাই করা দরকার।

আমি মনে করি না এসকিউএলসিএমডি হ্রাস করা হবে কারণ এটি এসকিউএল সার্ভার ডেটা সরঞ্জাম এবং ড্যাকপ্যাকগুলি কীভাবে কাজ করে তার পক্ষে অতীব গুরুত্বপূর্ণ।
জোনাথন অ্যালেন

@ জোনাথন অ্যালেন আপনি যদি এমন কোনও ডকুমেন্টেশন খুঁজে পান যা DACPAC ব্যবহার করে পরিচালনা করে SQLCMDতা আমাকে জানান, কারণ আমি যা পাই তার বেশিরভাগই পাওয়ারশেলকে রেফারেন্স করেsqlcmdএসএসডিটি-র সাথে স্কিমার তুলনা বাদে যেখানে রেফারেন্স ব্যবহৃত হয় তা আমি দেখতে পাই না, তবে আমি উত্পন্ন স্ক্রিপ্টগুলি কখনই ব্যবহার করি না।
শন মেল্টন

এসএসডিটি স্ক্রিপ্টগুলি স্কুয়েলসিএমডি স্ক্রিপ্টগুলি। এটি প্যারামিটারগুলি, ব্যবহারকারী-সংজ্ঞায়িত এবং ডাটাবেসের নামের মতো জিনিস উভয়ই পরিচালনা করে। আপনি যদি SQLlPackage.exe ব্যবহার করে DACPAC স্থাপন করতে চান তবে এই লিঙ্কটি দেখায় যে কীভাবে sqlcmd পরামিতিগুলি পার করতে হবে। msdn.microsoft.com/en-us/…
জোনাথন অ্যালেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.