`
xiagu1
  • 浏览: 48193 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python数据库应用

阅读更多

最近用的比较多的数据库是sqlite,本身我机器上装的activepython,自带有sqlite3,我自己写的存储数据的代码如下:

def store_data(id_name,sq_data):
    """将获取到的数据比较并插入到sqlite"""
    #连接数据库
    cx = sqlite.connect('chaojiv1.1.sqlite')
    cu = cx.cursor()
    #raw_input("Press ENTER to exit")
    #0,1、2、3、4别为min/max/mostnum/mostprice/price/
    cu.execute('''create table if not exists kaixin(
        id text primary key,
        name text,
        min float,
        max float,
        mostpricenum text,
        mostprice float,
        price float,
        rate float,
        maxrate float,
        categ text
        )''')
    #查询比较并写入数据库
    #rc='replace into  kaixin values(' +pp[jj]+',"'+bb[jj]+'",'+xmlprice[-1]+','+max(xmlprice)+','+min(xmlprice)+')'
    for i in id_name[0].keys():
        rc='select min, max, mostpricenum,mostprice from kaixin where id='+i
        #mostprice float, mostpricenum text, maxrate float
        cu.execute(rc)
        oo=cu.fetchall()
        #c为tuple,0,1、2、3、4别为min/max/mostnum/mostprice/price/
        temp0=sq_data[0][i]
        temp1=sq_data[1][i]
        temp2=sq_data[2][i]
        temp3=sq_data[3][i]
        temp4=sq_data[4][i]
        if len(oo)==0:
            print "new item",id_name[0][i].decode('utf-8').encode('gbk')
        else:
            if temp0>oo[0][0]:
                temp0=oo[0][0]
            if temp1<oo[0][1]:
                temp1=oo[0][1]
            if temp2<oo[0][2]:#比较多出现的价格次数,次数少就按照多出现的价格
                temp2=oo[0][2]
                temp3=oo[0][3]
    #print rc
        rc='replace into  kaixin values(' +i+',"'+id_name[0][i]+'",'+str(temp0)+','+str(temp1)+ \
          ','+str(temp2)+','+str(temp3)+',' +str(temp4)+','+str((float(temp1)-float(temp4))/float(temp4)*100)+\
          ','+ str((float(temp3)-float(temp4))/float(temp4)*100)+',"'+id_name[1][i] + '")'
        #print rc
        cu.execute(rc)
    cx.commit()
    cx.close()

 同样的,python支持各种类型的数据库,而且只要相应的库遵循python的DB API,那么连接方式大同小异。比如SQLSERVER的使用。首先安装pymssql,地址在:http://pymssql.sourceforge.net/

然后就跟使用sqlite很类似了。

import os
import  sys
import  string
import pymssql as sqlite1

# 连接数据库
try:
    cx = sqlite1.connect(host='172.18.1.1',user='user',password='pass',database='elementinfo')
    print "connect ok"
except Exception, e:
    print e
    print "erro"
    sys.exit()
# 获取cursor对象来进行操作
cu = cx.cursor()
#查询出数据
sql = "select * from tabTimeData where ObservTimes<2009031008 and ObservTimes>2009031000"
print sql
cu.execute(sql)
raw_input("Press ENTER to exit")
alldata = cu.fetchall()
if alldata:
    for rec in alldata:
        print rec
cu.close()
cx.close()
print type(alldata)
print len(alldata)
print alldata[3][3]
print "end"
 

 

 

0
0
分享到:
评论
1 楼 cloverprince 2010-04-22  
另外,python有没有支持sql语句的构造呢?比如类似这样:
stu_name = """John Smith';drop table students......"""
make_statement("select * from students where name = ?", stu_name)

防止注入。

相关推荐

    Python项目案例开发从入门到实战源代码第3章 数据库应用——智力问答测试

    在本项目案例中,我们将深入探讨...通过这个项目,你将能够掌握Python数据库应用的基本技能,并能将其应用到更广泛的项目中。实践是学习最好的方式,所以动手完成这个案例,将有助于加深对Python数据库操作的理解。

    python数据库管理应用实例

    1. **Python数据库接口(DB-API)**:Python的数据库API(PEP 249)提供了一个统一的接口,使得不同数据库系统之间的代码可移植性增强。常见的Python数据库库如`sqlite3`(SQLite)、`psycopg2`(PostgreSQL)、`...

    python 连接达梦数据库

    Python 连接达梦数据库是指在 Python 编程语言中连接达梦数据库,以便在 Python 应用程序中使用达梦数据库。下面是 Python 连接达梦数据库的详细步骤和知识点: 检查 Python 是否安装 在开始连接达梦数据库之前,...

    python实现连接数据库账号注册和登录

    1. Python数据库连接:使用Python数据库接口库连接和操作数据库。 2. 用户注册和登录:处理用户信息的增删改查,尤其是密码的安全存储。 3. 哈希算法:用于密码的加密存储,提供不可逆的密码验证方式。 4. 网络编程...

    Python数据库的链接

    Python数据库的链接是编程领域中的一个关键概念,尤其对于初学者来说,理解如何在Python中操作数据库至关重要。Python提供了一些强大的库,使得开发者能够轻松地与各种类型的数据库进行交互,如MySQL、SQLite、...

    python实现数据库编程

    ### Python 实现数据库编程 在本篇文章中,我们将探讨如何使用 Python 进行数据库编程,主要聚焦于如何连接和操作数据库。Python 是一种强大的高级编程语言,在数据处理、Web 开发等多个领域都有着广泛的应用。而...

    pythonGUI与数据库开发教程

    Python GUI允许开发者创建直观、交互性强的应用程序,而Python的数据库接口则使得数据管理变得简单易行。以下将详细阐述这两个核心主题。 ### 第一部分:Python GUI 1. **Tkinter库**:Python的标准GUI库,适用于...

    Python数据库模块

    本篇文章将深入探讨Python中用于数据库操作的三个主要模块:`ibm_db`、`pymysql`和`cx_Oracle`,以及它们在实际应用中的使用。 首先,`ibm_db`是Python连接IBM DB2数据库的接口。它提供了与DB2数据库进行交互的功能...

    python+sqlserver教务管理系统数据库应用课程设计

    【Python与SQLServer教务管理系统数据库应用课程设计】 在信息技术高度发达的今天,数据库管理系统在各行各业的应用日益广泛,尤其在教育领域,教务管理系统的构建是提升教学效率、优化资源分配的重要手段。在这个...

    python操作mysql数据库.pdf

    Python 操作 MySQL 数据库是通过 Python DB-API 实现的,Python DB-API 为开发人员提供了数据库应用编程接口。Python 数据库接口支持非常多的数据库,可以选择适合项目的数据库,如 GadFly、mSQL、MySQL、PostgreSQL...

    用于做python数据库实验的营养数据源

    描述中提到,“Python基础教程里13.2.2数据库应用程序示例”是一个关键点,这可能指的是《Python编程:从入门到实践》或其他类似的教材。在13.2.2章节中,通常会讲解如何使用Python连接和操作数据库,包括创建数据库...

    python桌面应用连接数据库代码实例.zip

    python利用tkinter+pymysql制作的一个mysql数据库增删改查的代码实例。原理说明,执行sql进行增删改查及数据库的实际操作,可以用它直接嵌入到自己的桌面应用中,包含tkinter演示代码、终端运行代码、pymysql的...

    Python访问MySQL数据库

    摘 要: 讲解了应用 Python 如何访问 MySQL 数据库。首先介绍了 Python、MySQL,然后讲解 MySQL 数据库访问模块,并通过一个实例来说明应用该模块来访问 MySQL 数据库,最后总结了用 Python 访问 MySQL 数据库的优点

    python面试数据库框架笔记总结

    接着,我们来讨论几个常用的Python数据库框架: 1. **SQLite3**:这是Python的标准库之一,无需服务器,轻量级,适合小型应用或测试。面试时可能会询问如何创建数据库、表,以及如何进行CRUD(创建、读取、更新、...

    sql_CONNECT.zip_MYSQL_mysql python_python sql_python 数据库_python数

    接下来,我们看看标签:"mysql mysql_python python_sql python_数据库 python数据库"。这些标签进一步强调了Python与MySQL数据库之间的接口,以及Python在处理SQL和数据库方面的能力。 在提供的压缩包子文件"sql_...

    python数据库课程.7z

    Python数据库课程是一个深入探讨如何使用Python与各种数据库进行交互的学习资源。这个压缩包包含了多个Python脚本文件,每个文件都专注于不同的数据库操作或特定的Python技术。以下是对这些文件所代表的知识点的详细...

    Python-SQLcrush一个基于控制台的数据库编辑器

    Python是一种广泛使用的编程语言,尤其在数据处理和Web开发领域,...通过深入学习和实践,开发者不仅能掌握SQLcrush的使用,还能进一步提升自己的Python数据库开发技能,为未来应对更复杂的数据管理任务打下坚实基础。

    用Python实现数据库编程.pdf

    本文将详细介绍几种常用的Python数据库编程方法,包括使用DAO(Data Access Objects)、Python DB API以及Python ODBC模块等。 #### 二、使用DAO(Data Access Objects) DAO是一种较早出现的数据访问技术,虽然...

    Python访问MySQL数据库.pdf

    该模块是Python数据库API规范的一个实现,它提供了Python代码和MySQL数据库之间交互的接口。 文章通过一个实例来说明如何使用Python的Mysqldb模块来访问MySQL数据库,强调了连接数据库、执行SQL查询和处理查询结果...

Global site tag (gtag.js) - Google Analytics