# -*- coding: utf-8 -*-
'''
Created on 2019年3月6日 @author: Administrator
'''
import sqlite3
import numpy as np
import io def adapt_array(arr): out = io.BytesIO()
np.save(out, arr)
out.seek(0)
return sqlite3.Binary(out.read()) def convert_array(text):
out = io.BytesIO(text)
out.seek(0)
return np.load(out) # 创建数据库连接对象
conn = sqlite3.connect('sample_database.db', detect_types=sqlite3.PARSE_DECLTYPES) # 连接到SQLite数据库
'''
sqlite3.PARSE_DECLTYPES
本常量使用在函数connect()里,设置在关键字参数detect_types上面。表示在返回一行值时,是否分析这列值的数据类型定义。如果设置了本参数,就进行分析数据表列的类型,并返回此类型的对象,并不是返回字符串的形式。 sqlite3.PARSE_COLNAMES
本常量使用在函数connect()里,设置在关键字参数detect_types上面。表示在返回一行值时,是否分析这列值的名称。如果设置了本参数,就进行分析数据表列的名称,并返回此类型的名称
'''
# 参数:memory:来创建一个内存数据库
# conn = sqlite3.connect(":memory:", detect_types=sqlite3.PARSE_DECLTYPES) # Converts np.array to TEXT when inserting
sqlite3.register_adapter(np.ndarray, adapt_array) # Converts TEXT to np.array when selecting
sqlite3.register_converter("array", convert_array) x = np.arange(12).reshape(2, 6) # conn = sqlite3.connect(":memory:", detect_types=sqlite3.PARSE_DECLTYPES)
cursor = conn.cursor()
# 创建数据库表
cursor.execute("create table test (arr array)")
# 插入一行数据
cursor.execute("insert into test (arr) values (?)", (x,))
# 提交
conn.commit() cursor.execute("select arr from test")
data = cursor.fetchone()[0] print(data)
'''
[[ 0 1 2 3 4 5]
[ 6 7 8 9 10 11]]
'''
print(type(data))
'''
<class 'numpy.ndarray'>
'''
cursor.close() # 关闭Cursor
conn.close() # 关闭数据库

Python 操作sqlite数据库及保存查询numpy类型数据(一)的更多相关文章

  1. Python 操作sqlite数据库及保存查询numpy类型数据(二)

    # -*- coding: utf-8 -*- ''' Created on 2019年3月6日 @author: Administrator ''' import sqlite3 import nu ...

  2. Python操作sqlite数据库小节

    学习了Python操作sqlite数据库,做一个小结,以备后用. import sqlite3import os# 进行数据库操作时,主要是参数如何传输try:# 链接数据库conn=sqlite3. ...

  3. Python操作SQLite数据库的方法详解

    Python操作SQLite数据库的方法详解 本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简单介绍 SQLite数据库是一款非常小巧的嵌入式开 ...

  4. Python 操作 SQLite 数据库

    写在之前 SQLite 是一个小型的关系型数据库,它最大的特点在于不需要单独的服务.零配置.我们在之前讲过的两个数据库,不管是 MySQL 还是 MongoDB,都需要我们安装.安装之后,然后运行起来 ...

  5. python操作sqlite数据库

    root@cacti:~/box# cat convert.py #!/usr/bin/env python import sqlite3,time,rrdtool,os def boxstatus( ...

  6. 8.1 使用Python操作SQLite数据库

    SQLite是内嵌在Python中的轻量级.基于磁盘文件袋额数据库管理系统,不需要安装和配置服务,支持使用SQL语句来访问数据库.该数据库使用C语言开发,支持大多数SQL91标准,支持原子的.一致的. ...

  7. python 操作sqlite数据库

    '''SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说 没有独立的维护进程,所有的维护都来自于程序本身. 在python中,使用sqlite3创建数据库的连接,当我们指定的数据库文件不 ...

  8. 42.QT-QSqlQuery类操作SQLite数据库(创建、查询、删除、修改)详解

    Qt 提供了 QtSql 模块来提供平台独立的基于 SQL 的数据库操作.这里我们所说的“平台 独立”,既包括操作系统平台,也包括各个数据库平台,Qt支持以下几种数据库: QT自带SQLITE数据库, ...

  9. Python操作Mysql数据库进阶篇——查询操作详解(一)

    前面我们已经介绍了在Python3.x中如何连接一个Mysql数据库,以及怎么样对这个数据库创建一个表,增删改查表里的数据.想必大家对Mysql数据库和简单的sql语句有了一定的了解,其实sql语句博 ...

随机推荐

  1. 【转载】opencv 二值化函数——cv2.threshold

    https://blog.csdn.net/weixin_38570251/article/details/82079080 threshold:固定阈值二值化, ret, dst = cv2.thr ...

  2. HDU2294--Pendant(DP,矩阵优化)

    Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...

  3. React曾经忽略的知识点(下)

    1.JSX渲染 想让类似 false.true.null 或 undefined 出现在输出中,你必须先把它转换成字符串 : <div> My JavaScript variable is ...

  4. 【Python】学习笔记十三:函数的参数对应

    位置传递 我们在定义函数时候已经对函数进行了参数传递调用,但是那只是粗浅的位置传递 示例 def sum(a,b,c): d = a+b+c return d print(sum(1,2,3)) 调用 ...

  5. vue动态监听浏览器窗口高度

    HTML: <div ref="page"></div> JS: data(){ return{ clientHeight:'', } } mounted( ...

  6. PixelShuffle

  7. 总结 webpack 的插件

    模块化第一步  初始化 package.json 文件 node.js 指令 npm init npm的官网:https://www.npmjs.com/ 搜索插件名,查看插件的用法 1. webpa ...

  8. 电脑出现了一块tap window adapter v9 网卡 以及虚拟机桥接模式无法通信原因

    计算机与外界局域网的连接是通过主机箱内插入一块网络接口板(或者是在笔记本电脑中插入一块PCMCIA卡).网络接口板又称为通信适配器或网络适配器(network adapter)或网络接口卡NIC(Ne ...

  9. 转 HTTP请求报文格式 GET和POST

    https://blog.csdn.net/h517604180/article/details/79802914 最近在做安卓客户端图片上传插件功能,供后台调用.其中涉及到了拼接HTTP请求报文,所 ...

  10. js获取Session问题

    纯htm页面必须采用AJAX了,ASP页面:var manager='<%=session("manager")%>', ASPX页面:var manager='< ...