📅  最后修改于: 2020-11-07 07:39:47             🧑  作者: Mango
CREATE TABLE语句用于在MYSQL数据库中创建表。在这里,您需要指定表的名称以及每列的定义(名称和数据类型)。
以下是在MySQL中创建表的语法-
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
以下查询在MySQL中创建一个名为EMPLOYEE的表,该表有5列,分别是FIRST_NAME,LAST_NAME,AGE,SEX和INCOME。
mysql> CREATE TABLE EMPLOYEE(
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT);
Query OK, 0 rows affected (0.42 sec)
DESC语句为您提供指定表的描述。使用此方法,您可以验证表是否已创建,如下所示:
mysql> Desc Employee;
+------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+----------+------+-----+---------+-------+
| FIRST_NAME | char(20) | NO | | NULL | |
| LAST_NAME | char(20) | YES | | NULL | |
| AGE | int(11) | YES | | NULL | |
| SEX | char(1) | YES | | NULL | |
| INCOME | float | YES | | NULL | |
+------------+----------+------+-----+---------+-------+
5 rows in set (0.07 sec)
名为execute()的方法(在游标对象上调用)接受两个变量-
一个字符串值,表示要执行的查询。
可选的args参数,可以是元组,列表或字典,代表查询的参数(占位符的值)。
它返回一个整数值,表示该查询影响的行数。
建立数据库连接后,可以通过将CREATE TABLE查询传递给execute()方法来创建表。
简而言之,要使用Python创建表-
导入mysql.connector包。
使用mysql.connector.connect()方法创建连接对象,方法是将用户名,密码,主机(可选的默认值:localhost)和数据库(可选的)作为参数传递给它。
通过在上面创建的连接对象上调用cursor()方法来创建游标对象。
然后,通过将CREATE TABLE语句作为参数传递给execute()方法来执行它。
以下示例在数据库mydb中创建一个名为Employee的表。
import mysql.connector
#establishing the connection
conn = mysql.connector.connect(
user='root', password='password', host='127.0.0.1', database='mydb'
)
#Creating a cursor object using the cursor() method
cursor = conn.cursor()
#Dropping EMPLOYEE table if already exists.
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
#Creating table as per requirement
sql ='''CREATE TABLE EMPLOYEE(
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT
)'''
cursor.execute(sql)
#Closing the connection
conn.close()