কম্পিউটার টিউটোরিয়াল

MySQL-এ 'CREATE TABLE FROM VIEW' সিনট্যাক্স সহজে করা

CREATE TABLE SELECT সিনট্যাক্স ব্যবহার করে ভিউ থেকে টেবিল তৈরি করা যায়। সিনট্যাক্স:

CREATE TABLE yourTableName AS SELECT yourColumnName1, yourColumnName2, yourColumnName3, ... N FROM yourViewName;

উপরের ক্যোয়ারি চালাতে হলে প্রথমে একটি টেবিল তৈরি করতে হবে, তারপর সেই টেবিলের ওপর একটি ভিউ তৈরি করতে হবে। তারপর ক্যোয়ারি রান করাতে হবে।

প্রথমে একটি টেবিল তৈরি করি:

mysql> CREATE TABLE StudentInformation (
    -> Id INT,
    -> Name VARCHAR(100)
    -> ); Query OK, 0 rows affected (0.54 sec)

টেবিল তৈরি হয়ে গেলে এখন একটি ভিউ তৈরি করি:

mysql> CREATE VIEW view_Student AS SELECT Id, Name FROM StudentInformation; Query OK, 0 rows affected (0.11 sec)

এখন 'view_Student' নামে একটি ভিউ তৈরি হয়েছে। SHOW কমান্ড দিয়ে ভিউ চেক করি:

mysql> SHOW CREATE VIEW view_Student;

আউটপুট

+--------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+
| View         | Create View                                                                                                                            | character_set_client | collation_connection |
+--------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+
| view_student | CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `view_student` AS SELECT `studentinformation`.`Id` AS `Id`, `studentinformation`.`Name` AS `Name` FROM `studentinformation` | utf8                 | utf8_general_ci      |
+--------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+
1 row in set (0.00 sec)

উপরের ভিউ নাম 'view_Student' ব্যবহার করে একটি টেবিল তৈরি করি:

mysql> CREATE TABLE CreatingTableUsingViewStudent AS
    -> SELECT Id, Name FROM view_Student; Query OK, 0 rows affected (0.50 sec) Records: 0 Duplicates: 0 Warnings: 0

SHOW কমান্ড দিয়ে টেবিলের DDL চেক করি:

mysql> SHOW CREATE TABLE CreatingTableUsingViewStudent;

আউটপুট

+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                         | Create Table                                                                                                                                                                      |
+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| CreatingTableUsingViewStudent | CREATE TABLE `creatingtableusingviewstudent` ( `Id` INT(11) DEFAULT NULL, `Name` VARCHAR(100) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
  1. MySQL LIKE ব্যবহার করে প্রথম টেবিল থেকে নতুন টেবিল তৈরির পদ্ধতি

  2. MySQL-এ SHOW TABLES ব্যবহার করে ডাটাবেসের সব টেবিল নাম দেখুন

  3. MySQL-ে ইনডেক্সসহ টেবিল তৈরি করা (CREATE INDEX)

  4. MySQL에서 VIEW(뷰) 생성하고 조회하기