python pymysql 创建 一个带有id的表,举个例子
时间: 2023-11-28 18:48:52 浏览: 151
好的,以下是使用 Python 和 PyMySQL 在 MySQL 数据库中创建一个带有 id 的表的例子:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', database='test')
# 创建游标对象
cursor = conn.cursor()
# 执行 SQL 语句,创建带有 id 的表
sql = '''
CREATE TABLE example (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT NOT NULL
)
'''
cursor.execute(sql)
# 提交事务
conn.commit()
# 关闭游标和连接
cursor.close()
conn.close()
```
这个例子中创建了一个名为 `example` 的表,其中包含一个自增的 `id` 字段,以及 `name` 和 `age` 字段。你可以根据自己的需求修改表的结构。注意,必须在执行 SQL 语句后调用 `commit()` 方法提交事务,否则表不会真正被创建。
相关问题
python pymysql 创建 一个带有id的表,举个例子,并插入一条数据
好的,以下是创建一个带有id的表并插入一条数据的示例代码:
```python
import pymysql
# 连接数据库
db = pymysql.connect(host='localhost', user='root', password='password', database='test_db')
cursor = db.cursor()
# 创建表
create_table_sql = '''
CREATE TABLE IF NOT EXISTS `example` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
'''
cursor.execute(create_table_sql)
# 插入数据
insert_data_sql = '''
INSERT INTO `example` (`name`) VALUES ('John');
'''
cursor.execute(insert_data_sql)
db.commit()
# 关闭连接
cursor.close()
db.close()
```
以上代码创建了一个名为 `example` 的表,该表包含 `id` 和 `name` 两个字段,其中 `id` 是自增长的主键。然后,插入了一条名为 `John` 的数据。需要注意的是,执行插入操作后需要调用 `commit()` 方法提交事务,否则数据不会真正写入数据库。
python用pymysql写的一个公共方法
在Python中,我们可以使用`pymysql`库来操作MySQL数据库。为了编写一个公共方法,通常会创建一个封装了连接、执行SQL查询、处理结果等功能的函数。这里是一个简单的例子:
```python
import pymysql
def mysql_conn_exec(sql, params=None):
"""
公共的MySQL连接和执行方法
:param sql: 需要执行的SQL语句,可以带参数
:param params: SQL参数列表,如果有的话
:return: 查询结果或None(如果无返回值)
示例:
result = mysql_conn_exec("SELECT * FROM table WHERE id = %s", (1,))
print(result)
"""
# 连接数据库(假设配置在配置文件或变量中)
db_config = {
'host': 'localhost',
'port': 3306,
'user': 'username',
'password': 'password',
'db': 'database_name'
}
conn = pymysql.connect(**db_config)
try:
with conn.cursor() as cursor:
# 如果有参数,使用%操作符防止SQL注入
if params:
cursor.execute(sql, params)
else:
cursor.execute(sql)
# 执行完SQL获取数据
if cursor.description: # 判断是否有查询结果
result = cursor.fetchall()
return result
else:
return None # 返回None表示无结果集
except Exception as e:
print(f"Error occurred: {str(e)}")
return None
finally:
conn.close() # 关闭连接
# 使用方法
result = mysql_conn_exec("SELECT * FROM users WHERE name='John'")
```
阅读全文
相关推荐















