在实际开发过程中,对于项目的数据查询和数据统计,那python是相当好用,相信很多后端工程师是java语言入门的,对于python呢是有一点陌生,我自己也是,不过当你操作起来呢发现其实还是蛮好上手的。以下就是一些简单的示例,大家可以参考一下。
环境:pycharm2023.1,python3.7,PostgreSQL13.1,MySql5.7.11
在Python中,对于数据库连接,你需要使用适当的数据库连接库(如sqlite3
、pymysql
、psycopg2
等),并配置连接参数(如数据库URL、用户名、密码等)。
- 在PyCharm的欢迎界面,选择“Create New Project”或者点击菜单栏中的“File” > “New Project”。
- 在弹出的窗口中,选择你想要的Python解释器版本(如果你已经安装了多个版本的话)。
- 为你的项目选择一个合适的目录位置,并输入一个项目名称。
- 点击“Create”按钮以创建新项目。
postgresql
以下是一个简单的示例,展示如何使用Python的psycopg2库连接到postgresql数据库,并创建一个数据源:
你可以创建一个专门连接这个数据源的脚本,比如创建一个db文件夹,新建python File,命名为pgsql_db_tool,
在固定的连接信息没有定义database是因为想灵活一点访问多个数据库,注意一下我这里的password有逗号。
import psycopg2# 固定的连接信息(除了数据库名称)
CONNECTION_INFO = {'host': 'pglocalhost','port': '3308','user': 'desmond','password': 'abcdefg',
}def execute_query_in_db(db_name, query):# 构建完整的连接信息conn_info = CONNECTION_INFO.copy()conn_info['database'] = db_name# 连接到数据库try:conn = psycopg2.connect(**conn_info)cur = conn.cursor()# 执行查询cur.execute(query)# 获取查询结果rows = cur.fetchall()# 关闭游标和连接cur.close()conn.close()# 返回查询结果return rowsexcept (Exception, psycopg2.Error) as error:print(f"Error: {error}")return None
mysql
以下是一个简单的示例,展示如何使用Python的pymysql库连接到mysql数据库,并创建一个数据源:
你可以创建一个专门连接这个数据源的脚本,比如创建一个db文件夹,新建python File,命名为mysql_db_tool,
在固定的连接信息没有定义database是因为想灵活一点访问多个数据库,注意一下我这里的password有逗号。
import pymysqlconfig = {'host': 'mysqllocalhost','port': 3306,'user': 'desmond','password': 'abc123',
}def execute_query_in_mysqldb(query, db_name):conn_info = config.copy()conn_info['database'] = db_nametry:connection = pymysql.connect(**conn_info)cursor = connection.cursor()cursor.execute(query)rows = cursor.fetchall()connection.close()cursor.close()return rowsexcept (Exception, pymysql.Error) as error:print(f"Error:{error}")return None
示例用法
数据源写好之后我们就可以测试一下,简单查询一下相应连接的数据库,看看是否连接成功。
你也可以在写数据源的地方进行测试,我这里新建一个test文件夹和test.py进行测试mysql连接
from db import mysql_db_toolmysql_db_name = "你mysql连接下数据库名称,注意了,是数据库不是表名"
sql = "select count(*) from 表名"
datas = mysql_db_tool.execute_query_in_mysqldb(sql, mysql_db_name)if datas:print(datas[0][0])