SimpleSQLite-Python库

  • 授权协议:MIT
  • 开发厂商:未知
  • 开发语言:python
  • 收录时间:2021-02-09
  • 操作系统:Windows,Linux,OS X
  • 软件作者:thombashi
  • 开源标签: SimpleSQLite

软件介绍

SimpleSQLite是一款用来简化SQLite数据库的表创建和数据插入的Python库。

SimpleSQLite是一款用来简化SQLite数据库的表创建和数据插入的Python库。

特性:

  • Automatic table creation from data

  • Support various data type for insertion : dictionary, namedtuple,list and tuple

  • Create table from csv file

安装:

pip install SimpleSQLite

用法:

创建表

创建表的数据矩阵

from simplesqlite import SimpleSQLitecon = SimpleSQLite("sample.sqlite")data_matrix = [    [1, 1.1, "aaa", 1,   1],    [2, 2.2, "bbb", 2.2, 2.2],    [3, 3.3, "ccc", 3,   "ccc"],]con.create_table_with_data(    table_name="sample_table",    attribute_name_list=["attr_a", "attr_b", "attr_c", "attr_d", "attr_e"],    data_matrix=data_matrix)# display values -----print(con.get_attribute_name_list("sample_table"))result = con.select(select="*", table_name="sample_table")for record in result.fetchall():    print(record)# display data type for each column -----print(con.get_attribute_type_list(table_name="sample_table"))['attr_a', 'attr_b', 'attr_c', 'attr_d', 'attr_e'](1, 1.1, u'aaa', 1.0, u'1')(2, 2.2, u'bbb', 2.2, u'2.2')(3, 3.3, u'ccc', 3.0, u'ccc')(u'integer', u'real', u'text', u'real', u'text')

从csv文件创建表

输入:sample_data.csv

"attr_a","attr_b","attr_c"1,4,"a"2,2.1,"bb"3,120.9,"ccc"

插入记录

插入字典

from simplesqlite import SimpleSQLitecon = SimpleSQLite("sample.sqlite", "w")con.create_table_with_data(    table_name="sample_table",    attribute_name_list=["attr_a", "attr_b", "attr_c", "attr_d", "attr_e"],    data_matrix=[[1, 1.1, "aaa", 1,   1]])con.insert(    table_name="sample_table",    insert_record={        "attr_a": 4,        "attr_b": 4.4,        "attr_c": "ddd",        "attr_d": 4.44,        "attr_e": "hoge",    })con.insert_many(    table_name="sample_table",    insert_record_list=[        {            "attr_a": 5,            "attr_b": 5.5,            "attr_c": "eee",            "attr_d": 5.55,            "attr_e": "foo",        },        {            "attr_a": 6,            "attr_c": "fff",        },    ])result = con.select(select="*", table_name="sample_table")for record in result.fetchall():    print(record)(1, 1.1, u'aaa', 1, 1)(4, 4.4, u'ddd', 4.44, u'hoge')(5, 5.5, u'eee', 5.55, u'foo')(6, u'NULL', u'fff', u'NULL', u'NULL')

插入列表/元组/ namedtuple

from collections import namedtuplefrom simplesqlite import SimpleSQLitecon = SimpleSQLite("sample.sqlite", "w")con.create_table_with_data(    table_name="sample_table",    attribute_name_list=["attr_a", "attr_b", "attr_c", "attr_d", "attr_e"],    data_matrix=[[1, 1.1, "aaa", 1,   1]])SampleTuple = namedtuple(    "SampleTuple", "attr_a attr_b attr_c attr_d attr_e")con.insert(    table_name="sample_table",    insert_record=[7, 7.7, "fff", 7.77, "bar"])con.insert_many(    table_name="sample_table",    insert_record_list=[        (8, 8.8, "ggg", 8.88, "foobar"),        SampleTuple(9, 9.9, "ggg", 9.99, "hogehoge"),    ])result = con.select(select="*", table_name="sample_table")for record in result.fetchall():    print(record)(1, 1.1, u'aaa', 1, 1)(7, 7.7, u'fff', 7.77, u'bar')(8, 8.8, u'ggg', 8.88, u'foobar')(9, 9.9, u'ggg', 9.99, u'hogehoge')

上一篇:fountain-同步MySQL数据库增量变化

下一篇:MapDCharting-基于MapD Core数据库的可视化库

相关阅读

查看更多 >