python数据分析——如何用python连接远程数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Python数据分析

本文将以SQLite、MySQL,PostgreSQL为例讲解python怎样连接远程数据库并执行相关数据库操作。

SQLite
image.png

SQLite可能是与Python连接的最方便的数据库,因为我们不需要安装任何外部Python SQL模块即可使用。默认情况下,Python会自带一个名为sqlite3的Python SQL库,我们可以使用该库与SQLite数据库进行交互。而且,我们甚至不需要安装和运行SQLite服务器即可执行数据库操作!

下面是使用sqlite3连接到SQLite数据库的方法,看代码就行 ,关键位置都给了注释

导入相关模块import sqlite3from sqlite3 import Errordef create_connection(path): connection = None try: #使用.connect()连接,并将SQLite数据库路径作为参数。如果数据库位于指定位置,则建立与数据库的连接。否则,将在指定位置创建一个新数据库,并建立连接。 connection = sqlite3.connect(path) print("成功连接") except Error as e: print(f"错误 '{e}' 发生") return connection

connect(path)返回一个连接对象,该对象由create_connection()返回。此连接对象可用于在SQLite数据库上执行查询。接下来执行下面的命令就可以连接到数据库

connection = create_connection("填写你的路径\filename.sqlite")
执行完毕后会在目录下面看到多了一个以.sqlite结尾的文件。

MySQL
image.png

与SQLite不同,没有默认的Python SQL模块可用于连接到MySQL数据库。相反,我们需要安装mysql-connector-python以便从Python应用程序中与MySQL数据库进行交互。

pip install mysql-connector-python
但是需要注意,MySQL是基于服务器的数据库管理系统。一台MySQL服务器可以有多个数据库。与SQLite不同,在SQLite中创建连接等同于创建数据库,MySQL数据库两步来创建数据库:首先与MySQL服务器建立连接,然后执行一个单独的查询来创建数据库。

import mysql.connectorfrom mysql.connector import Errordef create_connection(host_name, user_name, user_password): connection = None try: #创建连接 connection = mysql.connector.connect( host=host_name, user=user_name, passwd=user_password ) print("连接成功") except Error as e: print(f"错误 '{e}' 发生") return connectionconnection = create_connection("localhost", "root", "")

但是到目前为止,我们仅仅连接成功到mysql,并没有创建database,因此我们定义另一个create_database()接受两个参数的函数:connection是connection要与之交互的数据库服务器的对象。query 是创建数据库的查询。

def create_database(connection, query): cursor = connection.cursor() try: cursor.execute(query) print("Database created successfully") except Error as e: print(f"The error '{e}' occurred")

要执行查询,我们可以使用cursor对象。将query要执行传递给cursor.execute()

create_database_query = "CREATE DATABASE zaoqi" #创建databasecreate_database(connection, create_database_query)

至此,我们就已经在数据库服务器上创建了一个数据库。

PostgreSQL
image.png

与MySQL一样,没有默认的Python SQL库可用于与PostgreSQL数据库进行交互。因此需要安装第三方Python SQL驱动程序才能与PostgreSQL交互。那么我们选择的驱动程序是psycopg2。

pip install psycopg2
与SQLite和MySQL数据库一样,我们定义create_connection()与PostgreSQL数据库建立连接:

import psycopg2from psycopg2 import OperationalErrordef create_connection(db_name, db_user, db_password, db_host, db_port): connection = None try: connection = psycopg2.connect( database=db_name, user=db_user, password=db_password, host=db_host, port=db_port, ) print("Connection to PostgreSQL DB successful") except OperationalError as e: print(f"The error '{e}' occurred") return connection

接下来使用和mysql一样的办法创建一个database

def create_database(connection, query): connection.autocommit = True cursor = connection.cursor() try: cursor.execute(query) print("Query executed successfully") except OperationalError as e: print(f"The error '{e}' occurred")create_database_query = "CREATE DATABASE zaoqi"create_database(connection, create_database_query)

至此我们已经学会如何用python连接数据库并创建database,而其他的操作比如增删改查就可以类比得到。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
SQL IDE Java
Java连接SQL Server数据库的详细操作流程
Java连接SQL Server数据库的详细操作流程
|
1天前
|
Java 关系型数据库 MySQL
JSP 教程 之 JSP 连接数据库 1
**JSP连接MySQL数据库教程**:确保有JDBC驱动,如MySQL 5或8的connector。将jar包放入Tomcat的lib目录。对于MySQL 8,驱动类改为`com.mysql.cj.jdbc.Driver`,URL示例:`jdbc:mysql://localhost:3306/baidu?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8`。创建数据库`baidu`和表`websites`,包含站点信息,然后插入测试数据。
10 4
|
22小时前
|
数据采集 机器学习/深度学习 数据可视化
利用Python和Pandas库构建高效的数据分析流程
在数据驱动的时代,数据分析已成为企业决策的关键环节。本文介绍如何利用Python编程语言及其强大的数据分析库Pandas,构建一套高效且可扩展的数据分析流程。与常规的数据分析流程不同,本文不仅涵盖数据加载、清洗、转换等基础步骤,还强调数据可视化、模型探索与评估等高级分析技巧,并通过实际案例展示如何在Python中实现这些步骤,为数据分析师提供一套完整的数据分析解决方案。
|
2天前
|
机器学习/深度学习 数据采集 数据可视化
使用Python进行数据分析涉及数据收集
【6月更文挑战第21天】使用Python进行数据分析涉及数据收集(如数据库、文件、API),数据清洗(处理缺失值、异常值和重复项),数据探索(统计摘要、可视化和相关性分析),特征工程(创建新特征和编码),模型构建(选择算法、训练与调整),模型评估(计算指标、可视化效果),结果解释(报告和可视化),以及部署与维护。此过程因项目需求而异,可能需迭代。常用库有`pandas`、`requests`、`BeautifulSoup`、`Matplotlib`等。
5 1
|
2天前
|
SQL Oracle 关系型数据库
Python连接数据库进行数据查询的操作代码
mysql数据库(mariadb) 连接数据库 首先,你需要使用MySQLdb.connect()函数建立与MySQL数据库的连接。你需要提供数据库服务器的地址(host),用户名(user),密码(passwd),以及你想要操作的数据库名称(db)。 创建Cursor对象 一旦建立了数据库连接,你可以使用连接对象的cursor()方法来创建一个cursor对象。这个方法返回一个cursor实例,你可以使用这个实例来执行SQL查询和命令。
|
2天前
|
存储 关系型数据库 MySQL
连接数据库
【6月更文挑战第20天】连接数据库。
3 1
|
5天前
|
SQL 关系型数据库 MySQL
Python进阶第二篇(Python与MySQL数据库)
Python进阶第二篇(Python与MySQL数据库)
|
5天前
|
SQL IDE Java
Java连接SQL Server数据库的详细操作流程
Java连接SQL Server数据库的详细操作流程
|
3天前
|
SQL 关系型数据库 MySQL
数据库大作业——基于qt开发的图书管理系统(三)Qt连接Mysql数据库
数据库大作业——基于qt开发的图书管理系统(三)Qt连接Mysql数据库
|
3天前
|
数据采集 数据可视化 数据挖掘
Python数据分析入门指南
Python数据分析涉及环境搭建(推荐Anaconda,含pandas和matplotlib库)。使用`pandas`读取CSV数据,如`data = pd.read_csv('data.csv')`。数据清洗包括检查缺失值(`data.isnull().sum()`)和处理异常值。然后进行数据处理,如创建新列、选择特定列及分组。利用`matplotlib`进行数据可视化,绘制直方图和散点图,以`plt.hist()`和`plt.scatter()`展示数据。

热门文章

最新文章