2019-10-18 15:07:37 Zhangrunhong 阅读数 54
  • Python-数据

    Python数据库编程视频教程,数据库是MySQL,讲解Python链接MySQL数据库,并对数据库进行增删改查操作。

    10902 人正在学习 去看看 尹成

Python操作SQLite数据库实现添加

添加单条数据


c.execute("insert into question values(null,?,?,?,?,?,?)", ("墨菲定律", "aa", "bb", "cc", "dd", "A"))

添加多条数据: 方式1


for i in range(15):
    c.execute("insert into question values(null,?,?,?,?,?,?)", ("墨菲定律", "aa", "bb", "cc", "dd", "A"))

添加多条数据: 方式2


c.executemany("insert into question values(null,?,?,?,?,?,?)", (
    ("圣墟1", "aa", "bb", "cc", "dd", "B"),
    ("圣墟2", "aa", "bb", "cc", "dd", "C"),
    ("圣墟3", "aa", "bb", "cc", "dd", "B"),
    ("圣墟4", "aa", "bb", "cc", "dd", "B"),
    ("圣墟5", "aa", "bb", "cc", "dd", "B")
))

在这里插入图片描述

Python操作SQLite数据库实现修改

# 修改单条

c.execute("update question set answer = ? where _id = ?", ("D", 13))

在这里插入图片描述
# 修改多条

c.executemany("update question set answer = ? where _id = ?", (
    ("W", 2),
    ("WW", 3),
    ("GG", 4)
))

在这里插入图片描述

Python操作SQLite数据库实现删除

# 删除单条

c.execute("delete from question where _id = ?", (15,))

在这里插入图片描述
删除多条

c.executemany("delete from question where _id = ?", (
    (11,),
    (12,)
))

## Python操作SQLite数据库实现查询

# 查询
c.execute("select * from question")

# 拿结果
# 1.拿第一条
# print(c.fetchone()[1])

# 2.拿多条
# for q in c.fetchmany(5):
#     print(q)

# 2.拿所有
# for q in c.fetchall():
#     print(q)


# 提交事物
conn.commit()
# 关闭游标
c.close()
# 关闭连接
conn.close()

Python操作SQLite数据库特殊方法

# 其他方法
c.executescript("""
insert into question values(null, "墨菲定律aaa", "aa", "bb", "cc", "dd", "A");
update question set question = "墨菲定律aaa" where _id = 17;
""")

# 定义函数

def reverseText(str):
    return str[::-1]

# 创建自定义函数

conn.create_function("rt", 1, reverseText)
c.execute("insert into question values(null,rt(?),?,?,?,?,?)", ("墨菲定律aaa", "aa", "bb", "cc", "dd", "A"))

在这里插入图片描述

2019-05-19 19:37:02 weixin_43790276 阅读数 395
  • Python-数据

    Python数据库编程视频教程,数据库是MySQL,讲解Python链接MySQL数据库,并对数据库进行增删改查操作。

    10902 人正在学习 去看看 尹成

Python数据库编程pymysql

一、数据库编程介绍

数据库编程就是针对数据库的操作,通过编写程序的方式,让程序做为数据库的客户端进行数据库操作。

对于MySQL的操作我们可以通过SQL语句,但是有很多情况下我们需要写入MySQL的数据非常多,并且是在其他平台获取数据的同时写入MySQL,需要边获取边写入,这种情况是不适合使用SQL语句的。

有些情况是我们需要读取MySQL中的数据,来给代码使用,这个时候我们需要将数据直接读到代码中,也不适合使用SQL语句。

Python提供了一个数据库编程的库pymysql,通过pymysql,我们可以通过代码来对数据库进行增、删、改、查操作,而不需要使用SQL语句,并且可以从其他平台获取数据的同时将数据写到数据库中,也可以读取数据后立即给代码使用。

本文就介绍pymysql对MySQL数据库的增、删、改、查操作方法。

二、准备事项

要对数据库进行操作,我们需要先准备好数据库,数据表以及连接数据库的用户。

我们先用通过root用户登录MySQL。

mysql -u root -p

1.创建数据库pymysql_demo 

create database pymysql_demo charset utf8; 

2.使用数据库pymysql_demo

use pymysql_demo; 

3.创建表test_table

create table test_table(id int unsigned primary key auto_increment not null,create_time TIMESTAMP not null DEFAULT CURRENT_TIMESTAMP,test_data LONGTEXT not null); 

4.创建数据库用户pymysql

# 用户名 pymysql, 密码 mysql 只能对pymysql_demo数据库进行操作,可以进行所有操作 
grant all privileges on pymysql_demo.* to 'pymysql'@'localhost' identified by 'mysql';

三、数据插入操作

在Python中操作数据库,不管是增删改查,都要经过五个步骤,分别是连接数据库,获取游标,数据库操作,关闭游标,关闭数据库连接。

from pymysql import connect


def insert_data():
    """
    在mysql中新增一条数据
    """
    # 1.创建连接
    conn = connect(
        host="localhost",
        port=3306,
        user="pymysql",
        password="mysql",
        database="pymysql_demo",
        charset="utf8"
    )
    # 2.创建游标
    cursor = conn.cursor()
    # 3.执行语句
    sql = '''insert into test_table values(0, now(), 'Hello MySQL!');'''
    try:
        cursor.execute(sql)
        conn.commit()
    except Exception as e:
        print(e)
    # 4.关闭游标
    cursor.close()
    # 5.关闭连接
    conn.close()


insert_data()

运行以上代码后,就会在数据库中插入数据“Hello MySQL!”。

如果我们需要插入更复杂的数据,将上面sql字符串修改一下就可以了。

如果我们需要插入更多的数据,将插入函数放在循环语句中多次执行就可以了。

四、数据查询操作

def select_data():
    """
    从mysql中查询数据
    """
    conn = connect(
        host="localhost",
        port=3306,
        user="pymysql",
        password="mysql",
        database="pymysql_demo",
        charset="utf8"
    )
    cursor = conn.cursor()
    row_one = None
    sql = '''select * from test_table;'''
    try:
        cursor.execute(sql)
        row_one = cursor.fetchone()
    except Exception as e:
        print(e)
    cursor.close()
    conn.close()
    print(row_one)


select_data()

运行结果:

(1, datetime.datetime(2019, 5, 19, 19, 11, 11), 'Hello MySQL!')

查询操作其实跟插入操作的步骤是一样的,只是连接数据库之后执行的是查询语句。

要进行更复杂的查询,只要将sql字符串换成您需要的SQL语句就行了。

其中的fetchone()是获取查询集中的一条数据,返回结果是一个元组。还有fetchmany()和fetchall()两个方法,fetchmany()可以接收一个整数参数,返回整数条数据,结果是一个嵌套的元组。fetchall()返回查询到的所有数据,返回结果也是一个嵌套的元组。

五、数据删除操作

def delete_data():
    """
    从mysql中删除数据
    """
    conn = connect(
        host="localhost",
        port=3306,
        user="pymysql",
        password="mysql",
        database="pymysql_demo",
        charset="utf8"
    )
    cursor = conn.cursor()
    sql = '''delete from test_table;'''
    try:
        cursor.execute(sql)
        conn.commit()
    except Exception as e:
        print(e)
    cursor.close()
    conn.close()


delete_data()

执行上面的代码后,数据表中的所有数据都会被删除。

在实际使用中,基本不会删除表中所有的数据,所以使用时把sql字符串换成自己需要的修改或者删除语句就行了。

 

 

2019-08-14 16:56:36 qq_41850110 阅读数 373
  • Python-数据

    Python数据库编程视频教程,数据库是MySQL,讲解Python链接MySQL数据库,并对数据库进行增删改查操作。

    10902 人正在学习 去看看 尹成

Python数据库编程
(一)SQLite3数据库
一、操作SQLite3数据库
从Python3.x版本开始,在标准库中已经内置了SQLite3模块,它可以支持SQLite3数据库访问和相关的数据库操作。在需要操作SQLite3数据库使,只需在程序中导入SQLite3模块即可。Python语言操作SQLite3数据库的基本流程如所示:
– 导入相关库或模块(SQLite3),使用connect()连接数据库并获取数据库连接对象。它提供了以下方法:
.cursor():该方法用来处理一个游标对象
.commit():该方法用来处理事务提交
.rollback():该方法用来处理事务回滚
.close():该方法用来关闭一个数据库连接
– 使用con.cursor()获取游标对象
– 使用游标对象的方法(exectute()executemany()、fetchall()等)来操作数据库,实现插入、修改和删除操作、并查询获取显示相关的记录。在Python程序中,连接函数sqlite3.connect()有如下两个常用参数。

二、使用SQLite3创建表
使用sqlite3模块的connect方法来创建/打开数据库,需要指定数据库路径,不存在则创建一个新的数据库。
con = sqlite3.connect(‘e:/sqllitedb/first.db’)
实例:

# 操作SQLite3创建表

"""
步骤:
    1.导入模块
    2.创建连接 sqlite3.connect()
    3.创建游标对象
    4.编写创建表的SQL语句
    5.执行SQL语句
    6.关闭游标,关闭连接
"""
# 导入模块
import sqlite3
# 创建连接
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
# 创建游标对象
cur = con.cursor()
# 编写创建表的(多条)SQL语句
sql = """create table t_person(
        pno INTEGER PRIMARY KEY autoincrement,
        pname VARCHAR NOT NULL,
        age INTEGER
        )"""
# 执行SQL语句
try:
    cur.execute(sql)
    print("创建表成功")
except Exception as e:
    print(e)
    print("创建表失败")
finally:
    # 关闭游标
    cur.close()
    # 关闭连接,释放资源
    con.close()

三、使用SQLite3插入数据
调用游标对象的execute执行插入的SQL,使用executemany()执行多条SQL语句,使用executemany()比循环使用execute()执行多条SQL语句效率高。
实例:插入一条和多条数据

# 操作SQLite3数据库插入一条数
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()
sql = "insert into t_person(pname,age) values(?,?)"
try:
    cur.execute(sql, ("张三", 21))
    # 提交事务
    con.commit()
    print("插入成功")
except Exception as e:
    print(e)
    print("插入失败")
    # 回滚事务
    con.rollback()
finally:
    cur.close()
    con.close()

# 操作SQLite3数据库插入多条数据
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()
sql = "insert into t_person(pname,age) values(?,?)"
try:
    cur.executemany(sql, [("郭辉", 20), ("小明", 19), ("小花", 18)])
    # 提交事务
    con.commit()
    print("插入多条数据成功")
except Exception as e:
    print(e)
    print("插入多条数据失败")
    # 回滚事务
    con.rollback()
finally:
    cur.close()
    con.close()

四、操作SQLite3查询数据
查询数据,游标对象提供了fetchall()和fetchone()方法。 fetchall()方法获取所有数据,返回一个列表。fetchone()方法获取其中一个结果,返回一个元组。
实例:操作SQLite3查询一条或所有的数据

# 操作SQLite3数据库查询所有数据
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()
sql = "select * from t_person"
try:
    cur.execute(sql)
    # 查找所有
    # 获取结果集
    person_all = cur.fetchall()
    print(person_all)
    for t in person_all:
        print(t)
except Exception as e:
    print(e)
    print("查询失败")
    # 回滚事务
    con.rollback()
finally:
    cur.close()
    con.close()


# 操作SQLite3数据库查询一条数据
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()

sql = "select * from t_person"
try:
    cur.execute(sql)
    # 获取一条数据
    person_one = cur.fetchone()
    print(person_one)
    for t in person_one:
        print(t)
except Exception as e:
    print(e)
    print("查询该条数据失败")
    con.rollback()
finally:
    cur.close()
    con.close()

五、操作SQLite3修改数据
实例:

# 操作SQLite3数据库修改数据
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()
sql1 = "update t_person set pname=? where pno=?"
sql2 = "select * from t_person"
try:
    cur.execute(sql1, ("小红", 1))
    print("修改数据成功")
    #提交事务
    cur.execute(sql2)
    con.commit()
    person_all = cur.fetchall()
    for i in person_all:
        print(i)
except Exception as e:
    print(e)
    print("修改数据失败")
    con.rollback()
finally:
    cur.close()
    con.close()

六、操作SQLite3删除数据
实例:

# 操作SQLite3数据库修改数据
import sqlite3
con = sqlite3.connect("D:\学习资料\Python整合\sqlite3Demo\demo.db")
cur = con.cursor()
sql1 = "delete from t_person where pno=?"
sql2 = "select * from t_person"
try:
    cur.execute(sql1, (2,))
    #提交事务
    con.commit()
    print("删除数据成功")
    cur.execute(sql2)
    person_all = cur.fetchall()
    for i in person_all:
        print(i)
except Exception as e:
    print(e)
    print("删除数据失败")
    con.rollback()
finally:
    cur.close()
    con.close()

(二)MySQL数据库
一、下载MySQL
https://www.mysql.com
下载社区版

二、安装MySQL
1.运行.msi安装版文件
2.勾选复选框同意协议,点击next
3.勾选‘custom’自定义安装,点击next
4.选择产品或特色,将MySQL Servers->MySQL Server-> MySQL Server 8.0下的MySQL Server 8.0.17-x64添加到需要下载的窗口中,点击next
5.选择安装路径,一般为默认安装路径
6.点击execute进行下载刚才添加到产品框的对应软件,点击next
7.点击next,配置MySQL(一般选择默认协议和端口),点击两次next
8.设置MySQL密码,点击next,设置MySQL服务器名称,点击next
9.点击execute进行应用配置,最后点击Finish、next、Finish

三、操作MySQL数据库
PyMySQL是在Python3.x版本中用于连接MySQL服务器的一个库,Python2中则使用mysqldb。

1.搭建PyMySQL环境
在使用PyMySQL之前,需要确保PyMySQL已安装。如果还未安装,可以使用以下命令安装最新版的PyMySQL。

pip install PyMySQL

2.创建数据库表
在Python程序中,可以使用execute()在数据库中创建一个新表,示例如下:

# 创建数据库表
# 导入pymysql模块
import pymysql
# 创建连接
con = pymysql.connect(host="localhost", user="root", password="rgyrzdt555", database="python_db", port=3306)
# 创建游标对象
cur = con.cursor()
# 编写创建表的sql
sql = """
    create table h_student(
    sno INT PRIMARY KEY auto_increment,
    sname varchar(30) NOT NULL,
    age int(2),
    score float(3, 1)
    )
"""
try:
    # 执行创建表的SQL
    cur.execute(sql)
    print("创建表成功")
except Exception as e:
    print(e)
    print("创建表失败")
finally:
    # 关闭连接
    con.close()

3.数据库插入数据操作
实例:向student表里面插入一条或多条数据信息
# 在数据库表中插入一条数据

  	import pymysql
    con = pymysql.connect(host="localhost", user="root", password="rgyrzdt555", port=3306, database="python_db")
    cur = con.cursor()
    sql = "insert into t_student(sname, age, score) values(%s, %s, %s)"
    
    try:
        cur.execute(sql, ("GuoHui", 21, 99))
        con.commit()
        print("数据插入成功")
    except Exception as e:
        print(e)
        con.rollback()
        print("数据插入失败")
    finally:
        cur.close()
        con.close()
    
    # 在数据库表中插入多条数据
    import pymysql
    con = pymysql.connect(host="localhost", user="root", password="rgyrzdt555", port=3306, database="python_db")
    cur = con.cursor()
    sql = "insert into t_student(sname, age, score) values(%s, %s, %s)"
    
    try:
        cur.executemany(sql,[("小明", 16, 78), ("小红", 17, 88), ("小郭", 19, 99), ("小雨", 20, 97)])
        con.commit()
        print("数据插入成功")
    except Exception as e:
        print(e)
        con.rollback()
        print("数据插入失败")
    finally:
        cur.close()
        con.close()

4.数据库查询操作
Python查询MySQL使用fetchone()方法获取的单条数据,使用fetchall()方法获取多条数据。
fetchone():该方法下获取下一个查询结果集。结果集是一个对象
fetchall():接收全部的返回结果行。
rowcount():这是一个只读属性,并返回执行execute()方法后影响的行数。
实例:单个查询、查询所有和按条件查询

# 数据库查询操作

# 单个查询操作
# fetchone()方法
import pymysql
con = pymysql.connect(host="localhost", user="root", password="rgyrzdt555", database="python_db", port=3306)
cur = con.cursor()
sql = "select * from t_student"
# sql = "select * from t_student where age=19"
try:
    cur.execute(sql)
    # 处理结果集
    student = cur.fetchone()
    sno = student[0]
    sname = student[1]
    age = student[2]
    score = student[3]
    print("sno:", sno, "sname:", sname, "age:", age, "score:", score)
except Exception as e:
    print(e)
    print("查询所有数据失败")
finally:
    con.close()



# 查询所有和按条件查询
# fetchall()方法
import pymysql
con = pymysql.connect(host="localhost", user="root", password="rgyrzdt555", database="python_db", port=3306)
cur = con.cursor()
sql = "select * from t_student"
# sql = "select * from t_student where age=19"
try:
    cur.execute(sql)
    # 处理结果集
    students = cur.fetchall()
    for p in students:
        sno = p[0]
        sname = p[1]
        age = p[2]
        score = p[3]
        print("sno:", sno, "sname:", sname, "age:", age, "score:", score)
except Exception as e:
    print(e)
    print("查询所有数据失败")
finally:
    con.close()

5.数据库更新操作
在Python程序中,可以使用update语句来更新数据库中的数据信息。
实例:修改数据库数据

# 数据库更新操作
import pymysql
con = pymysql.connect(host="127.0.0.1", user="root", password="rgyrzdt555", database="python_db", port=3306)
cur = con.cursor()
sql = "update t_student set sname=%s where sno=%s"
try:
    cur.execute(sql, ("guofutang", 1))
    con.commit()
    print("修改成功")
except Exception as e:
    print(e)
    con.rollback()
    print("修改失败")
finally:
    con.close()

6.数据库删除操作
使用delete加条件来删除数据
实例:删除数据

# 数据库删除操作
import pymysql
con = pymysql.connect(host="127.0.0.1", user="root", password="rgyrzdt555", database="python_db", port=3306)
cur = con.cursor()
sql = "delete from t_student where sno=%s"
try:
    cur.execute(sql, 3)
    con.commit()
    print("删除成功")
except Exception as e:
    print(e)
    con.rollback()
    print("删除失败")
finally:
    con.close()
2018-07-06 20:50:57 qq_27297393 阅读数 547
  • Python-数据

    Python数据库编程视频教程,数据库是MySQL,讲解Python链接MySQL数据库,并对数据库进行增删改查操作。

    10902 人正在学习 去看看 尹成

一、python数据库编程

    1、python数据库接口(Python DB-API )

            为开发人员提供的数据库应用编程接口

    2、支持的数据库服务软件

            MySQL、Oracle、SQL_Server、MongoDB ...

    3、python提供的的操作mysql模块

            python3 : pymysql  
                    安装命令$ sudo pip3 install pymysql
            python2 : MySQLdb  
                    安装命令$ sudo pip install mysql-python

二、pymysql模块使用流程

            1、建立数据库连接
            2、创建游标对象
            3、使用游标对象的方法操作数据库
            4、提交commit
            5、关闭游标对象
            6、关闭数据库连接

三、建立数据库连接

    1、创建与数据库连接的对象(调用connect()方法)

            对象名 = pymysql.connect(参数列表)
            对象名 = pymysql.connet(“主机地址”,“用户名”,“密码”,“库名”,charset=“utf8”)

        参数列表:
                1、host :主机地址
                2、port :端口3306
                3、db   :数据库名
                4、passwd:密码
                5、charset:编码方式,推荐使用utf8
                6、user :用户名

        示例
                对象名 = pymysql.connect(host="localhost",user="root",passwd="123456",db="userinfo",charset="utf8")
                对象名 = pymysql.connect("localhost","root","123456","userinfo","utf8")

    2、connect连接对象支持的方法

            a、cursor() 创建游标对象,用于执行sql语句
            b、commit() 提交到数据库执行(表记录增删改)
            c、rollback() 回滚
            d、close() 关闭数据库连接

    3、游标对象支持的方法

            a、execute(SQL命令,[SQL语句补位元素])    执行SQL命令
            b、fetchone()       获取结果集第一条记录
            c、fetchmany(n)   获取n条记录
            d、fetchall()          获取所有记录    
            e、close()         关闭游标

四、示例

        python通过pymysql提供的接口完成数据的读写,通过try-except进行异常捕捉,并配合commit、rollback完成一系列有效操作。

import pymysql

# 1.创建数据库连接对象
conn = pymysql.connect(host="localhost",user="root",passwd="123456",db="MOSHOU",charset="utf8")
# 2.创建游标对象
cur = conn.cursor()

# 3.利用游标对象的execute方法执行sql语句
sql_insert = "insert into hero values(20,'瓦煲饭','男','卡死');")
cur.execute(sql_insert)

# 4.提交到数据库执行
conn.commit()

# 5.关闭游标
cur.close()

# 6.关闭数据库连接
conn.close()
import pymysql
# connect参数简写
db = pymysql.connect("localhost","root","123456","MOSHOU",charset="utf8")
cur = db.cursor()
try:
    sql_select="select * from hero;"
    cur.execute(sql_select) #所有查询结果都在cur对象里
    data = cur.fetchone()
    print(data)
    print("************************")
    data2 = cur.fetchmany(3)
    for i in data2:
        print(i)
    print("************************")
    data3 = cur.fetchall()
    for i in data3:
        print(i)
    print("************************")
    print("ok")
    db.commit()
except Exception as e:
    print(e)

五、附录:目录

        人工智能(mysql)—— 目录汇总





2018-01-03 16:50:56 qq_29168493 阅读数 135
  • Python-数据

    Python数据库编程视频教程,数据库是MySQL,讲解Python链接MySQL数据库,并对数据库进行增删改查操作。

    10902 人正在学习 去看看 尹成

Python 数据库编程

 

Python能够直接通过数据库接口,也可以通过ORM来访问关系数据库。

我们可以去https://www.python.org/dev/peps/pep-0249查找到支持DB-API的各种数据库模块,文档,SIG等。

 

Python所有的数据库接口程序都在一定程度上遵守Python DB-API 规范。DB-API定义了一系列必须的对象和数据库存取方式,以便为各种底层数据库系统和多种多样的数据库接口程序提供一致的访问接口。由于DB-API 为不同的数据库提供了一致的访问接口,在不同的数据库之间移植代码成为一件轻松的事情。

 

我这边因为本身使用的是MySQL,所以直接用MySQLdb模块进行举例。

下载并安装MySQLdb模块:

http://www.codegood.com/archives/129

安装完之后用import MySQLdb测试一下是否正确安装:


PS: ImportError DLLload failed: %1 不是有效的 Win32 应用程序,这是因为我在64位系统上装了32位的模块,重新下载一下64位的重新安装一下就能解决这个问题

 我们先看一下MySQLdb的具体操作流程:


通过一个小例子看一下MySQLdb的基本运作:

 

#!/usr/bin/ env python
#coding=utf-8

from MySQLdb import *

#建立和数据库系统的连接
conn = connect(host='localhost', user='root',passwd='')

#获取操作游标
cursor = conn.cursor()

#执行SQL,创建一个数据库.
cursor.execute("""create database if not exists python""")

#选择数据库
conn.select_db('python')

#执行SQL,创建一个数据表.
cursor.execute("""create table test(id int, info varchar(100)) """)

#插入一条记录
value = [1,"inserted"]
try:
   # 执行sql语句
   cursor.execute("insert into test values(%s,%s)",value)
   # 提交到数据库执行
   conn.commit()
except:
   # Rollback in case there is any error
   conn.rollback()

# SQL 删除语句
sql = "DELETE FROM test WHERE 1=1 "
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 提交修改
   conn.commit()
except:
   # 发生错误时回滚
   conn.rollback()

#批量插入数据
values=[]
#生成插入参数值
for i in range(20):
    values.append((i,'Hello mysqldb, I am recoder ' + str(i)))

try:
    # 插入多条记录
   cursor.executemany("""insert into test values(%s,%s) """, values)
   # 提交修改
   conn.commit()
except:
   # 发生错误时回滚
   conn.rollback()

#查询数据
sql = "SELECT * FROM test WHERE 1=1"
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 获取所有记录列表
   results = cursor.fetchall()
   for row in results:
      id = row[0]
      info = row[1]
      # 打印结果
      print "id=%s,info=%s" %(id,info)
except:
   print "Error: unable to fecth data"

#关闭连接,释放资源
cursor.close()

 

当然,现在不止一个mysql,而是有很多种数据库系统,他们中绝大多数都有Python接口,但是如果要驾驭这些系统,你得懂得SQL,如果你仅仅是喜欢Python但是不喜欢甚至讨厌SQL的人,但是又想使用关系数据库作为你的数据储备,我们还可以使用ORM。

 

下一篇我们简单了解一下ORM。

 

Python连接数据库

阅读数 60

没有更多推荐了,返回首页