SQLite3基本使用从shell到python
SQLite是一个轻量级的关系型数据库,在訪问量不超过10万PV的中小站点中使用绰绰有余。
并且使用方便,接口简单,以下从命令行和python接口双方面介绍SQLite3的基本操作。
在linux终端中,通过 sqlite3 a.db 打开a.db数据库,假设不存在会自己主动创建,创建一个表格:
create table users(id integer primary key,name text,level integer);
然后插入新的数据:
insert into users(name,level) values('李斯',2);
insert into users(name,level) values('张三',4);
insert into users(name,level) values('王五',3);
显示表格内容:
sqlite> .mode column
sqlite> .headers on
sqlite> select * from users;
id name level
---------- ---------- ----------
1 李斯 2
2 张三 4
3 王五 3
更新李斯的level变为1。操作例如以下:
sqlite> update users set level=1 where name='李斯';
sqlite> select * from users;
id name level
---------- ---------- ----------
1 李斯 1
2 张三 4
3 王五 3
删除张三的数据:
sqlite> delete from users where name='张三';
sqlite> select * from users;
id name level
---------- ---------- ----------
1 李斯 1
3 王五 3
上面这些操作能够满足基本SQLite的使用了。以下通过python的接口调用:
连接数据库:
>>> import sqlite3
>>> db=sqlite3.connect('a.db')
>>> c=db.cursor()
插入一个用户的信息:
>>> c.execute('insert into users(name,level) values("田田蹦",9)')
<sqlite3.Cursor object at 0xb711c4a0>
>>> db.commit()
所有取出表中的数据:
>>> c.execute('select * from users')
<sqlite3.Cursor object at 0xb70e74e0>
>>> c.fetchall()
[(1, '李斯', 1), (3, '王五', 3), (4, '田田蹦', 9)]
一行一行取出表中数据:
>>> c.execute('select * from users')
<sqlite3.Cursor object at 0xb70e7c20>
>>> c.fetchone()
(1, '李斯', 1)
>>> c.fetchone()
(3, '王五', 3)
>>> c.fetchone()
(4, '田田蹦', 9)
>>> c.fetchone() == None
True
关闭游标对象并关闭数据库连接:
>>> c.close()
>>> db.close()
python下对SQLite的更新和删除操作參考上面的插入操作。是一样一样的。很方便。得到的表格数据是list,每行数据是一个tuple,兴许操作也很方便。
转载请注明:转自http://blog.csdn.net/littlethunder/article/details/24696309
SQLite3基本使用从shell到python的更多相关文章
- python调用shell, shell 引用python
python 调用 shell get_line_num="wc -l as_uniq_info | awk '{print $1}'" ###get the lines of & ...
- shell调用python脚本,并且向python脚本传递参数
1.shell调用python脚本,并且向python脚本传递参数: shell中: python test.py $para1 $para2 python中: import sys def main ...
- shell和python之间的参数传递
我们在使用shell调用其他语言的程序的时候,希望能够便捷的从shell中输入参数,然后由目标程序接收参数并运行,这样就省去了每次需要在原程序进行修改带来的麻烦,这里介绍一下如何从shell中 ...
- 使用shell调用python中的函数
最近遇到一个需求,需要通过shell调用python中的一个函数,发现其实也挺简单的: python脚本如下: test.py: import ConfigParser config = Config ...
- shell与python判断文件是否存在
日常运维中,我们会存在每日备份的现象,针对这一种情况可能会要求监控文件是否存在.比较笨拙的方法就是登录上服务器到某个路径下查看文件是否存在,除此之外,我们可以利用shell或者python来编写监控文 ...
- 启动python解释器的命令(python manage.py shell和python的区别)
如果你曾经使用过Python,你一定好奇,为什么我们运行python manage.py shell而不是python.这两个命令都会启动交互解释器,但是manage.py shell命令有一个重要的 ...
- 基于ssh,shell,python,iptables,fabric,supervisor和模板文件的多服务器配置管理
前言:略 新服务器:NS 主服务器:OS 一:OS上新建模板目录例如 mkdir bright 用于导入一些不方便在远程修改的配置文件.redis.conf等,到需要配置的步骤时用远程cp命令覆 ...
- shell执行Python并传参
shell: python test.py a1 222 test.py import sys print(sys.argv[1], type(sys.argv[1])) # a1 str print ...
- Windows正向绑定shell和反向反弹shell的Python代码
Windows下的shell原理 经过查阅资料,使用os.dup2(nfd, ofd)的方式重定向socket的输入输出到windows系统的cmd是无法做到的,属于系统原因,不能直接复制Linux下 ...
随机推荐
- Android模拟器访问本地的localhost失败及解决方案
在开发手机网站是,使用Android模拟器测试,在手机浏览器中输入localhost访问本地服务器失败! 原因: 在Android系统中localhost就是127.0.0.1 在Windows系统中 ...
- 利用TOAD实现把EXCEL数据导入oracle数据库
利用TOAD实现把EXCEL数据导入oracle数据库 工具: Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...
- DontDestroyOnLoad
本文由博主(YinaPan)原创,转载请注明出处:http://www.cnblogs.com/YinaPan/p/Unity_DontDestroyOnLoad.html public stati ...
- 【USACO 2.3.3】零数列
[题目描述] 请考虑一个由1到N(N=3, 4, 5 ... 9)的数字组成的递增数列:1 2 3 ... N. 现在请在数列中插入“+”表示加,或者“-”表示减,“ ”表示空白(例如1-2 3就等于 ...
- hive 桶相关特性分析
1. hive 桶相关概念 桶(bucket)是指将表或分区中指定列的值为key进行hash,hash到指定的桶中,这样可以支持高效采样工作. 抽样( sampling )可以在全体数 ...
- 在ubuntu14.04上安装oracle java6 java7的方法
注意: Debian建议安装openjdk,在release包中已包含. oracle的java需要自己安装,安装步骤如下: 1. 首先安装java-package,安装方法:apt-get inst ...
- Java学习----Java数据类型
1.基本数据类型(8种) 数字类型: 整数: byte :-128~+127 short :-32768~+32767 int: -2147483648~+2147483637 long 小数类型: ...
- js关于DOM和BOM
关于BOM和DOM BOM 下面一幅图很好的说明了BOM和DOM的关系 BOM提供了一些访问窗口对象的一些方法,我们可以用它来移动窗口位置,改变窗口大小,打开新窗口和关闭窗口,弹出对话框,进行导航以及 ...
- C#.net 货币格式转换
/// <summary> /// 输入Float格式数字,将其转换为货币表达方式 /// </summary> /// <param name="ftype& ...
- thinkphp 文件下载实例 实现以及注意事项
#下载 function download() { $id=$_GET['id']; $file_name ...