python怎样用数组的方式操作myswl增删查改
时间: 2024-02-19 22:01:50 浏览: 162
在Python中,我们可以使用MySQL官方提供的Python数据库API模块`mysql-connector-python`来连接MySQL数据库,然后使用列表(list)来模拟数组的方式操作MySQL数据库实现增删查改。
下面是一个简单的示例代码,实现了通过数组的方式操作MySQL数据库实现增删查改:
```python
import mysql.connector
# 建立连接
mydb = mysql.connector.connect(
host="localhost",
user="username",
password="password",
database="database_name"
)
# 创建游标
mycursor = mydb.cursor()
# 插入数据
sql = "INSERT INTO table_name (id, name, age) VALUES (%s, %s, %s)"
val = [(1, "Alice", 20), (2, "Bob", 25), (3, "Charlie", 30)]
mycursor.executemany(sql, val)
mydb.commit() # 提交事务
print(mycursor.rowcount, "record inserted.")
# 查询数据
mycursor.execute("SELECT * FROM table_name")
result = mycursor.fetchall()
# 将查询结果存入列表中
data = []
for row in result:
data.append(list(row))
# 修改数据
for row in data:
if row[1] == "Alice":
row[2] = 21
# 更新数据
for row in data:
sql = "UPDATE table_name SET age = %s WHERE id = %s"
val = (row[2], row[0])
mycursor.execute(sql, val)
mydb.commit() # 提交事务
print(mycursor.rowcount, "record(s) updated.")
# 删除数据
for row in data:
if row[1] == "Bob":
sql = "DELETE FROM table_name WHERE id = %s"
val = (row[0],)
mycursor.execute(sql, val)
mydb.commit() # 提交事务
print(mycursor.rowcount, "record(s) deleted.")
```
上面的代码中,我们首先使用`executemany()`方法向表中插入多条数据,然后使用`fetchall()`方法查询表中的所有数据,并将查询结果存入列表中。接着,我们通过遍历列表修改数据,并使用`execute()`方法执行UPDATE语句更新数据或DELETE语句删除数据,最后使用`commit()`方法提交事务。
需要注意的是,在实际使用中,我们应该根据实际情况使用try...except...语句来捕获可能出现的异常,以便在程序出现错误时能够及时处理。
阅读全文