python读取数据库

Posted yukizzc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python读取数据库相关的知识,希望对你有一定的参考价值。

一、access

1、获取表

http://blog.sina.com.cn/s/blog_92ab5a530102wjxe.html

参考这个链接。我把操作录制下来如下所示

 

import pypyodbc
import time
filepath = r\'C:\\Users\\zzc\\Desktop\\ScreenToGif\\Asset.mdb\'
# 连接mdb文件
connStr = (r\'Driver={Microsoft Access Driver (*.mdb)};DBQ=\'+filepath+\';\'
           )
conn = pypyodbc.win_connect_mdb(connStr)

# connStr = (
#     r\'Driver={SQL Sever};\'
#     r\'Server=sqlserver;\'
#     r\'Database=bill;\'
#     r\'UID=sa;\'
#     r\'PWD=passwd\'
# )
#
# conn = pypyodbc.connect(connStr)
# 创建游标
cur = conn.cursor()
cur.execute(\'SELECT * FROM MSysObjects WHERE Flags=0 AND Type=1\')
#获得第一个表的表名,为何是-6通过输出查看的
table_name = cur.fetchall()[0][-6]
print(table_name)

if conn:
    #无论如何,连接记得关闭
    conn.close()

 

2、获取指定表的内容

这里的表名要根据上一节程序获得,然后代入。同时用pandas存储数据并保存到csv文件中去。

import pypyodbc
import time
import pandas as pd
import numpy as np
filepath = r\'C:\\Users\\zzc\\Desktop\\ScreenToGif\\Asset.mdb\'
to_filepath = r\'C:\\Users\\zzc\\Desktop\\ScreenToGif\\a.csv\'
# 连接mdb文件
connStr = (r\'Driver={Microsoft Access Driver (*.mdb)};DBQ=\'+filepath+\';\'
           r\'Database=Asset2\' 
           )
conn = pypyodbc.win_connect_mdb(connStr)

# connStr = (
#     r\'Driver={SQL Sever};\'
#     r\'Server=sqlserver;\'
#     r\'Database=bill;\'
#     r\'UID=sa;\'
#     r\'PWD=passwd\'
# )
#
# conn = pypyodbc.connect(connStr)
# 创建游标
cur = conn.cursor()
cur.execute(\'SELECT * FROM Asset2\')
#获取第一条数据,返回他的长度,也就是字段长度了
columns_len = len(cur.fetchone())
#建立pandas,列数量就是上面字段数量
df = pd.DataFrame(columns=range(columns_len))

index = 0
for row in cur.fetchall():
    # temp用来保存每一行的数据
    temp = []
    for columns in range(columns_len):
        temp.append(row[columns])
    df.loc[index] = temp
    index+=1


#print(df)
df.to_csv(to_filepath)
if conn:
    #无论如何,连接记得关闭
    conn.close()

 

以上是关于python读取数据库的主要内容,如果未能解决你的问题,请参考以下文章

solr分布式索引实战分片配置读取:工具类configUtil.java,读取配置代码片段,配置实例

OpenGL、GLSL 片段着色器无法读取 Sampler2D 纹理

如何从 python 中的嵌套 YAML 文件中读取数据?

我无法从 android 的片段中读取活动中的数据库信息

Python3 关于excel 文件格式xls之读取写入和追加

常用python日期日志获取内容循环的代码片段