2018.5.8 python操纵sqlite数据库
创建:
create_Email = "CREATE TABLE if not exists emails (\n\
id INTEGER NOT NULL,\n\
user VARCHAR(64),\n\
email VARCHAR(64),\n\
PRIMARY KEY (id)\n\
);"
try:
sqlite_conn=sqlite3.connect(DB_SQLITE_NAME)
sqlite_cursor.execute(create_Email)
sqlite_conn.commit()
except sqlite3.Error,e:
traceback.print_exc()
sqlite_conn.rollback()
finally:
sqlite_conn.close()
面向对象:
class Email(object):
"""docstring for Email"""
def __init__(self):
self.emails = []
lines=self._get()
if lines != None and lines != 'failed':
for line in lines:
email = {}
email['id'] = line[0]
email['user'] = line[1]
email['email'] = line[2]
self.emails.append(email)
def _list_all_member(self):
tmp_str=''
for name,value in vars(self).items():
if value != None:
if type(value) == int:
tmp_str=tmp_str+name+'='+str(value)+','
else:
tmp_str=tmp_str+name+'='+"'"+str(value)+"'"+','
return tmp_str
def _list_all_member_insert(self,email):
tmp_str=''
value_str=' VALUES ('
for name,value in email.items():
if value != None:
tmp_str+=name+','
if type(value)==int:
value_str+=str(value)+','
else:
value_str+="'"+str(value)+"'"+','
tmp_str=tmp_str.strip(',')+')'
value_str=value_str.strip(',')+')'
return tmp_str,value_str
def _get(self):
try:
rows = []
sqlite_conn=sqlite3.connect(DB_SQLITE_NAME)
sqlite_cursor=sqlite_conn.cursor()
sql_select="SELECT * FROM EMAILS;"
sqlite_cursor.execute(sql_select)
for row in sqlite_cursor:
rows.append(row)
return rows
except sqlite3.Error,e:
return 'failed'
finally:
sqlite_conn.close()
def delete(self,id):
for email in self.emails:
if email['id'] == id:
self.emails.remove(email)
sql_delete= "DELETE FROM EMAILS WHERE id = '" + id + "';"
local_sql_exe(sql_delete)
def add(self,email):
self.emails.append(email)
sql_insert='INSERT INTO EMAILS ( '
name_str,value_str=self._list_all_member_insert(email)
sql_insert+=name_str+value_str
local_sql_exe(sql_insert)
def clear(self):
self.emails = []
sql_delete= "DELETE FROM EMAILS;"
local_sql_exe(sql_delete)
调用:
from sqlite import Email
email= Email()
email.emails
email.add(email)
email.delete(id)
2018.5.8 python操纵sqlite数据库的更多相关文章
- [python]用Python进行SQLite数据库操作
用Python进行SQLite数据库操作 1.导入Python SQLITE数据库模块 Python2.5之后,内置了SQLite3,成为了内置模块,这给我们省了安装的功夫,只需导入即可~ ]: u ...
- Python操作sqlite数据库小节
学习了Python操作sqlite数据库,做一个小结,以备后用. import sqlite3import os# 进行数据库操作时,主要是参数如何传输try:# 链接数据库conn=sqlite3. ...
- Python操作SQLite数据库的方法详解
Python操作SQLite数据库的方法详解 本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简单介绍 SQLite数据库是一款非常小巧的嵌入式开 ...
- python操作sqlite数据库
root@cacti:~/box# cat convert.py #!/usr/bin/env python import sqlite3,time,rrdtool,os def boxstatus( ...
- python 操作sqlite数据库
'''SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说 没有独立的维护进程,所有的维护都来自于程序本身. 在python中,使用sqlite3创建数据库的连接,当我们指定的数据库文件不 ...
- 用Python进行SQLite数据库操作
简单的介绍 SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经 ...
- Python 操作 SQLite 数据库
写在之前 SQLite 是一个小型的关系型数据库,它最大的特点在于不需要单独的服务.零配置.我们在之前讲过的两个数据库,不管是 MySQL 还是 MongoDB,都需要我们安装.安装之后,然后运行起来 ...
- Python 操作sqlite数据库及保存查询numpy类型数据(二)
# -*- coding: utf-8 -*- ''' Created on 2019年3月6日 @author: Administrator ''' import sqlite3 import nu ...
- Python 操作sqlite数据库及保存查询numpy类型数据(一)
# -*- coding: utf-8 -*- ''' Created on 2019年3月6日 @author: Administrator ''' import sqlite3 import nu ...
随机推荐
- conda的使用(附带远程文件传输命令)
1 环境管理 1.1查看当前系统下的环境 conda info -e 创建新的环境 # 指定python版本为3.6,注意至少需要指定python版本或者要安装的包 conda create -n m ...
- python基础--字典
Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...
- leetcode python 033 旋转数组查找
## 假设升序,import random def find(y): l,m=len(y),0 while l>1: n=int(l/2) if y[0] ...
- python os.walk()遍历文件夹
转自 http://alanland.iteye.com/blog/612459 via @alanland 今天第一次进行 文件遍历,自己递归写的时候还调试了好久,(主要因为分隔符号的问题),后来发 ...
- python-原始字符串,长字符串
一 长字符串 在python中要表示跨行多行的字符串,可以使用较为简单粗暴的表达-----三引号.例如: str = ”’那时我们有梦, 关于文学, 关于爱情, 关于穿越世界的旅行. 如今我们深夜饮 ...
- hosts 添加主机和ip映射
背景:在服务器搭建环境时,迁移项目后,停止服务出现以下问题. 原因:项目停止或启动找不到映射名称或服务. 解决:修改hosts文件.hosts文件地址 /etc/hosts 添加主机和 ...
- dom编程艺术笔记1--第二章
第二章语法部分: 1.js注释:<!-- XXXXX 而“-->”这部分js会认为是注释内容的一部分 2.var 声明变量 不用声明变量类型 3.声明使用一个数组语法:var object ...
- log4j的简介和使用
一.log4j是什么 引用官网的介绍 Log4j is a fast and flexible framework for logging application debugging messages ...
- 互动科技 快乐分享 X/Open DTP——分布式事务模型
这一几天一直在回顾事务相关的知识,也准备把以前了解皮毛的知识进行一些深入总结,虽然这一些知识并没有用到,但是了解其实现原理还是很有必要的,因为知道了原理,你也能把它实现出来. 在上一节事务的编程模型里 ...
- 2018-2019-2 《网络对抗技术》Exp1 PC平台逆向破解 20165326
实验一 目录 直接修改程序机器指令,改变程序执行流程 通过构造输入参数,造成BOF攻击,改变程序执行流 注入Shellcode并执行 问题及解决 思想感悟 一.修改机器指令 首先你需要一个pwn1文件 ...