微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sqlite3使用小记

最近搞一些小东西,需要一个数据库存储数据。但是吧,又不想用MysqL、Postgresql等这种

比较庞大的数据库。于是乎想到了sqlite3,轻量、使用方便。记一下使用的方法


当然,首先需要安装好sqlite3. 由于ubuntu自带,那就省事了~


创建数据库
在项目目录下打开shell。

$  sqlite3  database_name.db

这样就创建了数据库(实际上是如果database_name.db存在,则使用该数据库,不存在则创建database_name.db),并进入到sqlite的shell 命令行,同时使用该数据库(相当于MysqL的use databases.)
查看数据库.databases


创建表

create table table_name (id int primary key autoinrement,name char(100),age int not null,gender int);

查看表结构.schema table_name; 注意不是 “desc”;
如果要删除数据库,直接删除掉 database_name.db 文件即可~
查看当前数据库 .tables
删除

drop table table_name;

查询

select * from table_name where id=1;
MysqL的语法一致~ 不过统计数量不能用count(*),必须`select count(id) from table_name;`

插入

insert into table_name(name,age,gender) values('yuans',18,0);

修改表名

alter table old_name rename to new_name;

添加字段

alter table_name add name first_name char(100);

sqlite3不能修改表字段,只能通过重新建表来实现。(反正数据少,这也无所谓啦~)
呼~ 知道这么多也差不多够用了~
记上文档地址:http://www.sqlite.org/cli.html
sql语法文档: http://www.sqlite.org/syntax.html

由于我用的Python折腾的,那肯定得用一个sqlite3的python接口,即python模块sqlite3是也~。小记一下Python代码

import sqlite3

cnx = sqlite3.connect('database_name.db')   # 得在同一个目录下 (或者写出数据库全路径)
cur = cnx.cursor()
cur.execute('select * from table_name where id=?',(1,))   # sqlite3占位符使用的是 “?”,不是 "%s"
result = cur.fetchall()
# balabala~

暂时就记录这些,以后遇到有意思的再更新~

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐