python调用数据库的函数

Python可以通过各种库来连接和操作数据库,例如MySQL、PostgreSQL、SQLite、Oracle等。在本文中,我们将介绍一些Python中使用MySQL和SQLite库的基本用法。

1. 连接数据库

在进行数据库操作之前,我们需要先建立与数据库的连接。可以使用MySQLConnector库或sqlite3库来连接MySQL和SQLite数据库。

1.1 连接MySQL数据库:

```

import mysql.connector

cnx = mysql.connector.connect(user='root', password='password', host='localhost', database='database_name')

```

在这里,我们使用MySQLConnector库来连接MySQL数据库。`user`变量为登陆用户名,`password`变量为密码,`host`变量为MySQL数据库所在的主机名,`database`变量为要操作的数据库名。

1.2 连接SQLite数据库:

```

import sqlite3

conn = sqlite3.connect('database_name.db')

```

在这里,我们使用sqlite3库来连接SQLite数据库。`database_name.db`为要连接的数据库文件名。

2. 执行SQL语句

连接数据库之后,我们可以使用Python库提供的方法来执行SQL语句。

2.1 执行MySQL语句:

```

sql = "SELECT * FROM table_name;"

cursor = cnx.cursor()

cursor.execute(sql)

result = cursor.fetchall()

```

在这里,我们执行了一个简单的`SELECT`语句,并将返回结果存储在`result`变量中。注意,我们使用了`fetchall()`方法来获取所有的返回结果。

2.2 执行SQLite语句:

```

sql = "SELECT * FROM table_name;"

cur = conn.cursor()

cur.execute(sql)

result = cur.fetchall()

```

与MySQL相同,我们执行了一个简单的`SELECT`语句,并将返回结果存储在`result`变量中。注意,我们使用了`fetchall()`方法来获取所有的返回结果。

3. 插入数据

向数据库中插入数据是一个常见的操作。可以使用Python库提供的方法来完成数据插入操作。

3.1 插入MySQL数据:

```

sql = "INSERT INTO table_name (column1, column2, column3) VALUES (%s, %s, %d)"

data = ("value1", "value2", value3)

cursor = cnx.cursor()

cursor.execute(sql, data)

cnx.commit()

```

在这里,我们插入了一条数据到一个名为`table_name`的表中。我们使用了MySQL参数化查询语句,通过占位符表示待插入的值。使用`%s`表示字符串类型占位符,`%d`表示数字类型占位符。`data`变量为待插入的数据,其中包含三条数据分别对应`column1`、`column2`和`column3`这三列。

3.2 插入SQLite数据:

```

sql = "INSERT INTO table_name (column1, column2, column3) VALUES (?, ?, ?)"

data = ("value1", "value2", value3)

cur = conn.cursor()

cur.execute(sql, data)

conn.commit()

```

在这里,我们插入了一条数据到一个名为`table_name`的表中。我们使用了SQLite参数化查询语句,通过占位符表示待插入的值。使用`?`表示占位符。`data`变量为待插入的数据,其中包含三条数据分别对应`column1`、`column2`和`column3`这三列。

总结:

本文介绍了在Python中连接和操作MySQL和SQLite数据库的基本用法。连接数据库,执行SQL语句和插入数据是最基本的操作。但是,在实际开发过程中,我们还需要灵活运用Python提供的方法进行更加复杂的数据库操作。同时,在进行数据库操作时,也需要遵守一些规范和注意事项,例如MySQL中使用参数化查询可减少SQL注入的风险等。

壹涵网络我们是一家专注于网站建设、企业营销、网站关键词排名、AI内容生成、新媒体营销和短视频营销等业务的公司。我们拥有一支优秀的团队,专门致力于为客户提供优质的服务。

我们致力于为客户提供一站式的互联网营销服务,帮助客户在激烈的市场竞争中获得更大的优势和发展机会!

点赞(82) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部