python操作数据库

来源:互联网 发布:如何使用网络电视 编辑:程序博客网 时间:2024/06/07 18:47

使用python语言操作mysql数据库。

1.安装数据库mysql

我自己第一次安装的时候是直接在网上搜了一个下载的链接,直接安装了,可是安装的过程中并没有提示我设置数据库的密码,但是安装完之后发现打开命令框第一件事要做的就是输入密码,然后我选择卸载已经装好的mysql,重新在官网上下载一个installer安装,可是没想到安装时会出现错误,什么无法“start service”之类的,我又百度了一下,网上描述是因为之前安装的版本卸载的不彻底引发的错误,我按照网上的说明,把一切跟mysql有关的内容全部删除,包括注册表里面的内容,重新装了一次,成功了。

2.学习使用数据库mysql

在网上搜到了教程有关数据库的一些基本操作,create database;(新建数据库),create table mytable;(新建表),insert into mytable(插入数据),drop table mytable(删除已有的表)等等操作,具体的可以查看“http://wenku.baidu.com/link?url=GfdZzz1yE-KdLzFHjhYgNDxoAeLPtYlPUcMLl-41ekndlTDaGIlC7MpPVQhuxD-mGoIB7tXuwgrbbttQalB5R5BjvArE0x1-f05I-w0chnK”。


3,用python语言连接数据库,这个很简单,网上有很多的例子可以套用,但是要想操作数据库存储数据什么的,还需要了解一些基本的sql语句,使用sql语句可以实现使用python来操作数据库。有关sql语句可以查看http://www.w3cschool.cc/sql/sql-tutorial.html,这个里面有详细的教程。

db = MySQLdb.connect("localhost","root","123456","myciti" )
cursor = db.cursor()
sql = """insert into article values (0,"woainimahah","http://www.aa.com","2012-9-8","wo","qq","skjfasklfj","2019","up")"""
try:
    cursor.execute(sql)
    db.commit()
except:
    db.rollback()
db.close

4,剩下要做的就是用代码实现python操作数据库了。

 一开始我自己按照网上的模块,编写了代码,是作为一个函数来实现的,将要存储的数据当做参数传进去,具体的代码如下:

def insert(nam):
    db = MySQLdb.connect("localhost","root","123456","example" )
    cursor = db.cursor()
    sql = """insert into mytable values (nam)"""
    try:
      cursor.execute(sql)
      db.commit()
    except:
      db.rollback()
    db.close

可是实现我到数据库中查看,数据库中数据都是NULL,明显程序出问题了,到网上再一次查询比对,发现传参数的时候应当使用占位符来实现,而不是直接将参数写在后面。修改后的代码如下:

def insert(nam):
    db = MySQLdb.connect("localhost","root","123456","example" )
    cursor = db.cursor()
    sql = """insert into mytable values ("%s")"""
    try:
      cursor.execute(sql%(nam))
      db.commit()
    except:
      db.rollback()
    db.close

之后运行,能够将符合要求的域名正确的存入mysql数据库中。(注意一定要commit,不然数据库内容不会改变)运行结果如下:


0 0
原创粉丝点击