如何使用 Python 复制 MySQL 中的表?

pythonserver side programmingprogramming

我们可以使用 Python 在 mysql 中创建现有表的副本。整个表将被复制,包括列、列定义和表的所有行。

语法

CREATE TABLE table_name SELECT * FROM already_table

table_name 是要创建的新表的名称。现有表是要复制的表的名称。

在 Python 中使用 MySQL 复制表的步骤

  • 导入 MySQL 连接器

  • 使用 connect() 与连接器建立连接

  • 使用 cursor() 方法创建游标对象

  • 使用适当的 mysql 语句创建查询

  • 使用 execute() 方法执行 SQL 查询

  • 关闭连接

假设我们有一个名为"Students"的表,如下所示

+----------+---------+-----------+------------+
|    Name  |  Class  |    City   |    Marks   |
+----------+---------+-----------+------------+
|    Karan |    4    | Amritsar  |    95      |
|    Sahil |    6    | Amritsar  |    93      |
|    Kriti |    3    | Batala    |    88      |
|   Khushi |    9    | Delhi     |    90      |
|    Kirat |    5    | Delhi     |    85      |
+----------+---------+-----------+------------+

示例

我们要创建上述表格的副本。复制的表格名称为"CopyStudents"。

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

#将表 Students 复制到 CopyStudents
query="CREATE TABLE CopyStudents SELECT * FROM Students"
cursor.execute(query)

#从新表中选择行
query1="SELECT * FROM CopyStudents"
cursor.execute(query1)

#打印复制表的内容
for row in cursor:
   print(row)
db.close()

输出

(‘Karan’, 4 ,’Amritsar’ , 95)
(‘Sahil’ , 6 , ‘Amritsar’ ,93)
(‘Kriti’ , 3 , ‘Batala’ ,88)
(‘Amit’ , 9 , ‘Delhi’ , 90)
(‘Priya’ , 5 , ‘Delhi’ ,85)

表格中的所有行、列和列定义“Students” 被复制到 “CopyStudents” 表中。


相关文章