মাইএসকিউএলে টেবিল তৈরি করুন যা অন্য টেবিলের সাথে মেলে?


85

আমি মাইএসকিউএল ব্যবহার করছি। আমার কাছে EMP নামে একটি টেবিল রয়েছে এবং এখন একই স্কিমা, একই কলাম এবং একই সীমাবদ্ধতা নিয়ে আমার আরও একটি টেবিল (EMP_TWO) তৈরি করা দরকার। কিভাবে আমি এটি করতে পারব?


4
আপনি কি পিএইচপিএমওয়াই অ্যাডমিনের মতো কাঠামোটি রফতানি করার চেষ্টা করেছেন এবং তারপরে কেবল টেবিলের নাম পরিবর্তন করেছেন?
jprofitt

উত্তর:


178

অন্য সারণির কাঠামো / সীমাবদ্ধতার উপর ভিত্তি করে একটি নতুন সারণী তৈরি করতে ব্যবহার করুন:

CREATE TABLE new_table LIKE old_table;     

ডেটা জুড়ে অনুলিপি করতে, প্রয়োজন হলে ব্যবহার করুন

INSERT INTO new_table SELECT * FROM old_table;  

টেবিল ডকস তৈরি করুন

লাইক অপশনটিতে নোটগুলি থেকে সাবধান থাকুন:

মূল সারণীতে সংজ্ঞায়িত কোনও কলামের বৈশিষ্ট্য এবং সূচিপত্র সহ অন্য সারণির সংজ্ঞা অনুসারে একটি খালি সারণী তৈরি করতে LIKE ব্যবহার করুন:

টেবিল তৈরি করুন new_table মত লাইক_ টেবিল; মূল টেবিলের মতো টেবিল স্টোরেজ ফর্ম্যাটটির একই সংস্করণ ব্যবহার করে অনুলিপিটি তৈরি করা হয়েছে। মূল টেবিলের উপর নির্বাচন করুন বিশেষাধিকারের প্রয়োজন।

লাইক শুধুমাত্র বেস টেবিলের জন্য কাজ করে, দেখার জন্য নয়।

টেবিল তৈরি করুন ... লাইকটি মূল টেবিলে বা কোনও বিদেশী কী সংজ্ঞাগুলির জন্য নির্দিষ্ট করা কোনও ডেটা ডিরেক্টরি বা সূচি নির্দেশক সারণী বিকল্পগুলি সংরক্ষণ করে না।


6
+1 কয়েক বছর ধরে মাইএসকিউএল ব্যবহার করে আসছে এবং LIKEআপনি কোনও CREATEবিবৃতিতে ব্যবহার করতে পারবেন তা সম্পূর্ণ অজানা ছিল ।
jprofitt

@jprofitt কেবলমাত্র আমি জানি কারণ আমি অন্য দিন একটি প্রোডাকশন সার্ভারে কিছু গুরুত্বপূর্ণ পরীক্ষা করার জন্য এটি করতে চেয়েছিলাম (গুরুত্বপূর্ণ জিজ্ঞাসা) -> খুব দরকারী!
মানসে

@ মানসেউক যদি আমি একটি ডাটাবেস থেকে একটি টেবিল অনুলিপি করতে এবং এটি অন্য ডাটাবেসে পুনরায় তৈরি করতে চাই তবে কী হবে?
ইয়াজে

এটা অসাধারণ! ধন্যবাদ ... সত্যিই খুব দরকারী!
হাসান্টেম

অন্য ডাটাবেসে কারও যদি একই টেবিলের কাঠামোর প্রয়োজন হয় তবে আপনাকে যা করতে হবে তা হ'ল CREATE TABLE new_db.new_table LIKE old_db.old_table:)
জিমি আদারো

13

আপনি যদি কেবল স্ট্রাকচার অনুলিপি করতে চান তবে ব্যবহার করুন

create table new_tbl like old_tbl;

আপনি যদি স্ট্রাকচারের পাশাপাশি ডেটা কপি করতে চান তবে ব্যবহার করুন use

create table new_tbl select * from old_tbl;

5

মাইএসকিউএলে টেবিল তৈরি করুন যা অন্য টেবিলের সাথে মেলে? উত্তর:

CREATE TABLE new_table AS SELECT * FROM old_table;

4

আপনি এইভাবে যান না কেন

CREATE TABLE new_table LIKE Select * from Old_Table;   

অথবা আপনি এর মতো ডেটা ফিল্টার করে যেতে পারেন

CREATE TABLE new_table LIKE Select column1, column2, column3 from Old_Table where column1 = Value1;   

আপনার নতুন সারণীতে একই বাধা থাকার জন্য প্রথমে আপনাকে স্কিমা তৈরি করতে হবে তারপরে আপনার স্কিমা তৈরির জন্য ডেটা নেওয়া উচিত

CREATE TABLE new_table LIKE Some_other_Table;

4
উভয় likeএবং select *এক বিবৃতিতে ব্যবহার করা সম্ভব ? আমার ত্রুটি হচ্ছে এছাড়াও দয়া করে এই উত্তরটি stackoverflow.com/questions/10147565/create-table- Like
118


স্কেলসার্ভারের জন্য অনুরূপ কিছু পাওয়া যায় যা <ওল্ড টেবিলনাম> থেকে <নিউ নিউজ টেবিলনেমে * নির্বাচন করা হয়;
ত্রিকালদর্শী
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.