এসকিউএল সার্ভারে টেম্প টেবিল তৈরি করতে # ব্যবহার করা কি প্রয়োজনীয়?


91

এটি ব্যবহার করা প্রয়োজন? #এসকিউএল সার্ভারে অস্থায়ী টেবিল তৈরি আগে ?

উদাহরণ:

SELECT column1, column2, someInt, someVarChar 
INTO ItemBack1 
FROM table2
WHERE table2.ID = 7

আইটেমব্যাক 1 এর জন্য এটি ব্যবহার করা প্রয়োজন # কি প্রতীকটি ?

যদি তা না হয় তবে #টেম্প টেবিল তৈরিতে কী ব্যবহার ?


4
হ্যাঁ. # অস্থায়ী সারণী তৈরি করে। এটি ছাড়া একটি টেবিল তৈরি করে।
জিও লি হুয়ান

উত্তর:


151

হ্যাঁ. অস্থায়ী টেবিলগুলি তৈরি করতে আপনাকে "#" (হ্যাশ) দিয়ে সারণির নামটি উপস্থাপন করতে হবে।

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

"##" (ডাবল-হ্যাশ "গ্লোবাল" টেম্প টেবিল তৈরি করে যা অন্যান্য সেশনগুলিও অ্যাক্সেস করতে পারে।

অস্থায়ী টেবিলগুলির বুনিয়াদিগুলির জন্য নীচের লিঙ্কটি উল্লেখ করুন: http://www.codeproject.com/Articles/42553/Quick-Overview-Temporary- -2005

যদি আপনার টেবিলের সামগ্রীটি 5000 টিরও কম সারি থাকে এবং এতে এনভারচার (ম্যাক্স), ভের্বাইনারি (ম্যাক্স) এর মতো ডেটা না থাকে, সারণী ভেরিয়েবলগুলি বিবেচনা করুন।

এগুলি র‌্যামে থাকা অন্যান্য ভেরিয়েবলের মতোই দ্রুততম। এগুলি টেম্পডিবিতেও সংরক্ষণ করা হয়, র‌্যামে নয়

DECLARE @ItemBack1 TABLE
(
 column1 int,
 column2 int,
 someInt int,
 someVarChar nvarchar(50)
);

INSERT INTO @ItemBack1
SELECT column1, 
       column2, 
       someInt, 
       someVarChar 
  FROM table2
 WHERE table2.ID = 7;

সারণী ভেরিয়েবলগুলির উপর আরও তথ্য: http://odetocode.com/articles/365.aspx


11
এসকিউএল সার্ভারে, নির্বাচিত বাক্য গঠনটি @ আইটেমব্যাক 1 নির্বাচন করুন কলাম 1, কলাম 2, কিছু, কিছু থেকে টেবিল 2 কোথাও টেবিল 2.ID = 7
mhenry1384

8
পরিবর্তনশীল টেবিলগুলি র‍্যামে সংরক্ষণ করা হয় না, সেগুলি টেম্পডিবিতেও সংরক্ষণ করা হয়। আপনি যদি তাদের কিছু ডাউনসাইড না বুঝতে না চান তবে সারণী ভেরিয়েবলগুলি ব্যবহার না করার পরামর্শ দেব their
কনস্টান্টাইনেকে

আপনি 5000 সারি, এনভারচার (সর্বাধিক), ভের্বাইনারি (সর্বাধিক) বিধিনিষেধের জন্য উত্স দিতে পারেন? এটি অনুমোদিত, তবে কেন এটি সুপারিশ করা হয়নি তা আমি নিশ্চিত নই।
ব্র্যাড

4
আমিও ভেবেছিলাম টেবিলের ভেরিয়েবলগুলি স্মৃতিতে সঞ্চয় করা আছে। আমি সংশোধন করে দাঁড়িয়েছি: dba.stackexchange.com/a/16386/23720
বাওদাদ

4
আমি কেবল খুব বেশি মন্তব্য করতে চলেছি যে এটি একটি সত্য যে টেবিলের ভেরিয়েবলগুলি টেম্পিডবিতে সংরক্ষণ করা হয়। আমি মন্তব্য করছি তাই হয়তো আরও লোকেরা মন্তব্য পড়তে পারে এবং সেখানে পৌঁছে যায় কারণ আমি একজন সিনিয়র পরামর্শদাতা হিসাবে একটি যৌথ পদক্ষেপে ক্লান্ত হয়ে পড়েছি এমন একটি পুরো সময়ের কর্মচারীর সাথে তর্ক করতে হবে যা অজ্ঞ এবং অন্যথায় বলার চেষ্টা করে না। আমি ফরচুন ৫০০ তে কয়েক ডজন সংস্থার উপরে কথা বলছি, লোকেরা মন্তব্য দেখে খুশি। অদ্ভুতভাবে, যদি না এই ওপি যে প্রশ্নের উত্তর দেয় না আসলে তাদের উত্তরগুলি সম্পাদনা করে, আমরা এই অজ্ঞ ব্যক্তি আরও এক দশক বা আরও দীর্ঘকাল ধরে থাকব।
টম স্টিকেল

14

এই দুটি সারণীর মধ্যে পার্থক্য ItemBack1এবং #ItemBack1প্রথমটি হ'ল স্থায়ী (স্থায়ী) যেখানে অন্য হিসাবে অস্থায়ী।

এখন যদি আপনার প্রশ্নটি আবার দেখুন

এসকিএল সার্ভারে টেম্প টেবিল তৈরি করার জন্য কি # টি ব্যবহার করা দরকার?

উত্তরটি হ্যাঁ , কারণ এর পূর্ববর্তীটি ছাড়াই #টেবিলটি কোনও অস্থায়ী টেবিল হবে না, এটি সমস্ত সেশন এবং স্কোপের থেকে আলাদা হবে।

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