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

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

语法

CREATE TABLE table_name SELECT * FROM existing_table

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

在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()

#将表学生复制到复制学生
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”表中。

猜你喜欢