Creating tables by query

We can create new table by using Query. You can seen how to execute a query and get the records or modify the records in MySQL. Same way we can run one sql command to create tables.
$q="CREATE TABLE `sample_tb` (`empno` VARCHAR( 6 ) NOT NULL) ";
The above query will create a table sample_tb and add one column empno to it. But note that we have to execute the above code. After execution we can find out whether the query has successfully executed or not by using one if condition. If the query is not executed successfully then we will print the error message. If table create process is successful then we will display a success message. Here is the code

$query="CREATE TABLE `sample_tb` (`empno` VARCHAR( 6 ) NOT NULL) ";
if ($connection->query($query)) {
echo "created table sample_tb....";
}else{
echo $connection->error;
}
$connection stores mysqli connection details, declared at config file
As you can see we have created the table, with one column to store the data. Now what happens if the table sample_tb already exists and we will try to create again? The system will generate an error message.
Table 'sample_tb' already exists
To avoid error , use IF NOT EXISTS
CREATE TABLE IF NOT EXISTS `sample_tb` (`empno` VARCHAR( 6 ) NOT NULL)
So before trying to create the table we will delete the table and then create again. ( Note: do this if your requirement is there ). We also can't delete the table without checking the table is there or not. So we will use one if exists command like this.
$query="DROP table  IF EXISTS  sample_tb"; 
if ($connection->query($query)) {
echo "Table sample_tb deleted  ....";
}else{
echo $connection->error;
}
We can easily execute the create table query to generate the table. Note that this combination is used inside many scripts where temporary tables are create and deleted at the end.

How to check if table is created or not ?

We can use SHOW TABLE query to list the tables in database.
(Our database name is sql_tutorial )
if($stmt = $connection->query("SHOW TABLES LIKE 'sample_tb' ")){
 if($stmt->num_rows ==1 ){
	echo "table is created ";
  }else{
	echo $connection->error;
}
}

Query on creating table

While creating table we can add constraints, here we have added PRIMARY KEY to id column.
CREATE TABLE `student` (
 `id` int(2) NOT NULL,
 `name` varchar(50) CHARACTER SET utf8 NOT NULL DEFAULT '',
 `class` varchar(10) CHARACTER SET utf8 NOT NULL DEFAULT '',
 `mark` int(3) NOT NULL DEFAULT '0',
 `gender` varchar(6) CHARACTER SET utf8 NOT NULL DEFAULT 'male',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SQL References Alter Table
Primary Key Datatype Numeric Datatype Date Datatype Numeric List tables and Database Copy Table & SHOW CREATE Table
Subscribe to our YouTube Channel here


Subscribe

* indicates required
Subscribe to plus2net

    plus2net.com
    mobo

    03-12-2009

    can you please tell me how can i copy a table from one user to another in mysqlplus. Many thanks
    dan

    02-06-2012

    Thank you very very much!

    Post your comments , suggestion , error , requirements etc here





    SQL Video Tutorials










    We use cookies to improve your browsing experience. . Learn more
    HTML MySQL PHP JavaScript ASP Photoshop Articles FORUM . Contact us
    ©2000-2024 plus2net.com All rights reserved worldwide Privacy Policy Disclaimer