📌  相关文章
📜  Python中的MYSQLdb连接

📅  最后修改于: 2020-04-10 15:19:15             🧑  作者: Mango

在本文中,我讨论了如何使用Python远程连接到mysql数据库。对于任何应用程序,将数据库存储在服务器上以方便数据访问非常重要。远程连接数据库非常复杂,因为每个服务提供商都不提供对mysql数据库的远程访问。在这里,我使用Python的MySQLdb模块连接到我们的数据库,该数据库位于提供远程访问的任何服务器上。

什么是MYSQLdb?

MySQLdb是用于从Python连接到MySQL数据库服务器的接口。它实现了Python数据库API v2.0,并基于MySQL C API构建。
要安装的软件包:

mysql-connector-Python

mysql-Python

如果使用conda

conda install -c anaconda mysql-Python
conda install -c anaconda mysql-connector-Python

pip安装:

pip install MySQL-Python
pip install MySQL-Python-connector

倒入模块:

import MYSQLdb

如何使用Python连接到远程mysql数据库?

在开始之前,您应该了解SQL的基础知识。现在让我们讨论一下此代码中使用的方法:

  1. connect():此方法用于创建与我们的数据库的连接,它具有四个参数:
    1. 服务器名称
    2. 数据库用户名
    3. 数据库提供者
    4. 数据库名称
  2. cursor():此方法创建一个游标对象,该对象能够对数据库执行sql查询。
  3. execute():此方法用于在数据库上执行sql查询。它需要一个sql query(作为字符串)作为参数。
  4. fetchone():此方法检索查询结果集的下一行并返回单个序列,如果没有更多行可用,则返回None。
  5. close():此方法关闭数据库连接。

免费的远程mysql数据库提供者:
1. www.freemysqlhosting.net
2. www.heliohost.org

# 连接到MySQL数据库的模块
import MySQLdb
# 连接MySQL数据库的功能
def mysqlconnect():
    # 尝试连接
    try:
        db_connection= MySQLdb.connect
        ("Hostname","dbusername","password","dbname")
    # 如果连接不成功
    except:
        print("Can't connect to database")
        return 0
    # 如果连接成功
    print("已链接")
    # 使游标对象执行查询
    cursor=db_connection.cursor()
    # 执行查询
    cursor.execute("SELECT CURDATE();")
    # 以上查询为我们提供了当前日期获取数据
    m = cursor.fetchone()
    # 以上打印结果
    print("今天的日期是 ",m[0])
    # 关闭数据库连接
    db_connection.close()
# 连接到我们数据库的函数调用
mysqlconnect()

输出:

已链接
今天的日期是  2020-10-20

 

# Python代码来说明并在数据库中创建表
import MySQLdb
# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","testpassword","gfgdb" )
cursor = db.cursor()
# 使用execute()删除表(如果已存在)
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
# 根据需求创建表
sql =  CREATE TABLE EMPLOYEE (
         FNAME  CHAR(20) NOT NULL,
         LNAME  CHAR(20),
         AGE INT )
cursor.execute(sql) #table created
# 与服务器断开连接
db.close()