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)