python操作数据库之sqlite3打开数据库、删除、修改示例


Posted in Python onMarch 13, 2014
#coding=utf-8
__auther__ = 'xianbao'
import sqlite3
# 打开数据库
def opendata():
        conn = sqlite3.connect("mydb.db")
        cur = conn.execute("""create table if not exists tianjia(
id integer primary key autoincrement, username varchar(128), passworld varchar(128),
address varchar(125), telnum varchar(128))""")
        return cur, conn
#查询全部的信息

def showalldata():
        print "-------------------处理后后的数据-------------------"
        hel = opendata()
        cur = hel[1].cursor()
        cur.execute("select * from tianjia")
        res = cur.fetchall()
        for line in res:
                for h in line:
                        print h,
                print
        cur.close()
#输入信息

def into():
        username1 = str(raw_input("请输入您的用户名:"))
        passworld1 = str(raw_input("请输入您的密码:"))
        address1 = str(raw_input("请输入您的地址:"))
        telnum1 = str(raw_input("请输入您的联系电话:"))
        return username1, passworld1, address1, telnum1
#  (添加)  往数据库中添加内容

def adddata():
        welcome = """-------------------欢迎使用添加数据功能---------------------"""
        print welcome
        person = into()
        hel = opendata()
        hel[1].execute("insert into tianjia(username, passworld, address, telnum)values (?,?,?,?)",
                                        (person[0], person[1], person[2], person[3]))
        hel[1].commit()
        print "-----------------恭喜你数据,添加成功----------------"
        showalldata()
        hel[1].close()
#  (删除)删除数据库中的内容

def deldata():
        welcome = "------------------欢迎您使用删除数据库功能------------------"
        print welcome
        delchoice = raw_input("请输入您想要删除用户的编号:")
        hel = opendata()              # 返回游标conn
        hel[1].execute("delete from tianjia where id ="+delchoice)
        hel[1].commit()
        print "-----------------恭喜你数据,删除成功----------------"
        showalldata()
        hel[1].close()
# (修改)修改数据的内容

def alter():
        welcome = "--------------------欢迎你使用修改数据库功能-----------------"
        print welcome
        changechoice = raw_input("请输入你想要修改的用户的编号:")
        hel =opendata()
        person = into()
        hel[1].execute("update tianjia set username=?, passworld= ?,address=?,telnum=? where id="+changechoice,
                                (person[0], person[1], person[2], person[3]))
        hel[1].commit()
        showalldata()
        hel[1].close()
# 查询数据

def searchdata():
        welcome = "--------------------欢迎你使用查询数据库功能-----------------"
        print welcome
        choice = str(raw_input("请输入你要查询的用户的编号:"))
        hel = opendata()
        cur = hel[1].cursor()
        cur.execute("select * from tianjia where id="+choice)
        hel[1].commit()
        row = cur.fetchone()
        id1 = str(row[0])
        username = str(row[1])
        passworld = str(row[2])
        address = str(row[3])
        telnum = str(row[4])
        print "-------------------恭喜你,你要查找的数据如下---------------------"
        print ("您查询的数据编号是%s" % id1)
        print ("您查询的数据名称是%s" % username)
        print ("您查询的数据密码是%s" % passworld)
        print ("您查询的数据地址是%s" % address)
        print ("您查询的数据电话是%s" % telnum)
        cur.close()
        hel[1].close()
# 是否继续

def contnue1(a):
        choice = raw_input("是否继续?(y or n):")
        if choice == 'y':
                a = 1
        else:
                a = 0
        return a

if __name__ == "__main__":
        flag = 1
        while flag:
                welcome = "---------欢迎使用仙宝数据库通讯录---------"
                print welcome
                choiceshow = """
请选择您的进一步选择:
(添加)往数据库里面添加内容
(删除)删除数据库中内容
(修改)修改书库的内容
(查询)查询数据的内容
选择您想要的进行的操作:
"""
                choice = raw_input(choiceshow)
                if choice == "添加":
                        adddata()
                        contnue1(flag)
                elif choice == "删除":
                        deldata()
                        contnue1(flag)
                elif choice == "修改":
                        alter()
                        contnue1(flag)
                elif choice == "查询":
                        searchdata()
                        contnue1(flag)
                else:
                        print "你输入错误,请重新输入"
Python 相关文章推荐
Python常用内置函数总结
Feb 08 Python
在Python的Django框架中用流响应生成CSV文件的教程
May 02 Python
Python实现统计英文单词个数及字符串分割代码
May 28 Python
Python聚类算法之DBSACN实例分析
Nov 20 Python
kali中python版本的切换方法
Jul 11 Python
Python中的__init__作用是什么
Jun 09 Python
详解Python中的路径问题
Sep 02 Python
通过案例解析python鸭子类型相关原理
Oct 10 Python
Window10上Tensorflow的安装(CPU和GPU版本)
Dec 15 Python
Pytorch实现WGAN用于动漫头像生成
Mar 04 Python
python实战之用emoji表情生成文字
May 08 Python
python状态机transitions库详解
Jun 02 Python
使用Python判断IP地址合法性的方法实例
Mar 13 #Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 #Python
详解Python中的__init__和__new__
Mar 12 #Python
python文件和目录操作方法大全(含实例)
Mar 12 #Python
Python 文件读写操作实例详解
Mar 12 #Python
Python 异常处理实例详解
Mar 12 #Python
Python break语句详解
Mar 11 #Python
You might like
PHP中创建空文件的代码[file_put_contents vs touch]
2012/01/20 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
简单了解WordPress开发中update_option()函数的用法
2016/01/11 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
2018/07/17 PHP
实例讲解PHP验证邮箱是否合格
2019/01/28 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
在IE中调用javascript打开Excel的代码(downmoon原作)
2007/04/02 Javascript
写入cookie的JavaScript代码库 cookieLibrary.js
2009/10/24 Javascript
jquery 简短右键菜单 多浏览器兼容
2010/01/01 Javascript
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
2012/01/13 Javascript
图片动画横条广告带上下滚动的JS代码
2013/10/25 Javascript
js的回调函数详解
2015/01/05 Javascript
jQuery实现的产品自动360度旋转展示特效源码分享
2015/08/21 Javascript
改变checkbox默认选中状态及取值的实现代码
2016/05/26 Javascript
基于javascript实现按圆形排列DIV元素(一)
2016/12/02 Javascript
Javascript的this用法
2017/01/16 Javascript
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
JS 实现百度搜索功能
2018/02/01 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
微信小程序实现留言板功能
2018/11/02 Javascript
简单通过settimeout看javascript的运行机制
2019/05/10 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
python对数组进行反转的方法
2015/05/20 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
用pandas中的DataFrame时选取行或列的方法
2018/07/11 Python
Python中注释(多行注释和单行注释)的用法实例
2019/08/28 Python
简单了解Python write writelines区别
2020/02/27 Python
win10安装python3.6的常见问题
2020/07/01 Python
CSS3实现头像旋转效果
2017/03/13 HTML / CSS
新加坡最早生产电动滑板车的制造商之一:FunsToTheFore
2020/09/08 全球购物
颇特女士香港官网:NET-A-PORTER香港
2021/03/08 全球购物
理财投资建议书
2014/03/12 职场文书
幼儿园安全责任书范本
2014/07/24 职场文书
一文搞清楚MySQL count(*)、count(1)、count(col)区别
2022/03/03 MySQL