一、安装sqlite

下载页面:http://www.sqlite.org/download.html

1.下载 sqlite-tools-win32-*.zipsqlite-dll-win32-*.zip 压缩文件

2.创建文件夹 C:\sqlite,并在此文件夹下解压上面两个压缩文件,将得到 sqlite3.def、sqlite3.dll 和 sqlite3.exe 文件

3.添加 C:\sqlite 到 PATH 环境变量

4.在命令行输入sqlite3

二、常用命令

1. 帮助指令

sqlite>.help

2.使用 .show 命令,来查看 SQLite 命令提示符的默认设置

sqlite>.show
echo: off
explain: off
headers: off
mode: column
nullvalue: ""
output: stdout
separator: "|"
width:
sqlite>

3.退出shell

sqlite>.quit

三、语法

1.大小写敏感性

  大多数不区分大小写

2.注释

  -- 或者 /* */

四、常用数据类型

1.NULL

2.INTEGER

值是一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中

3.REAL

值是一个浮点值,存储为 8 字节的 IEEE 浮点数字

4.TEXT

值是一个文本字符串,使用数据库编码(UTF-8、UTF-16BE 或 UTF-16LE)存储

5.BLOB

值是一个 blob 数据,完全根据它的输入存储

五、创建数据库

1.创建数据库/进入数据库

在命令行下直接输入(注意不是进到sqlite3的shell里),如果存在则是进入数据库

sqlite3.exe testDb.db

2.查看当前数据库名

sqlite>.databases

3.备份数据库

sqlite3.exe pda.db .dump> testDb.sql

4.恢复数据库

sqlite3.exe pda.db < testDb.sql

5.附加数据库

6.分离数据库

六、创建表

1.

sqlite> CREATE TABLE COMPANY(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);

2.查看当前表名

sqlite>.tables

3.删除表

sqlite>DROP TABLE COMPANY;

4.插入数据

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (1, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );

5.查看数据

sqlite>.header on   --显示的时候会在顶部显示列的名称

sqlite>.mode column --显示的列会对齐

sqlite> SELECT * FROM COMPANY;

设置字段显示宽度

sqlite>.width 10, 20, 10 --第一字段10,第二字段20....

七、运算符、表达式

算术运算符、比较运算符、逻辑运算符   --暂略

八、当前时间

sqlite>  SELECT CURRENT_TIMESTAMP;
CURRENT_TIMESTAMP = 2013-03-17 10:43:35

九、更新

sqlite> UPDATE COMPANY SET ADDRESS = 'Texas' WHERE ID = 3;

十、删除

sqlite> DELETE FROM COMPANY WHERE ID = 1;

清空表

sqlite> DELETE FROM COMPANY;

十一、通配符

星号(*)代表零个、一个或多个数字或字符。问号(?)代表一个单一的数字或字符。这些符号可以被组合使用

SELECT FROM table_name WHERE column GLOB '*XXXX*' 
SELECT FROM table_name WHERE column GLOB '????'

十二、返回行数数量

限制返回行数的数量

sqlite> SELECT * FROM COMPANY LIMIT 2;

十三、排序

asc 正序  desc 倒序

sqlite> SELECT * FROM COMPANY ORDER BY NAME DESC, SALARY ASC;

十四、分组

sqlite>  SELECT NAME, SUM(SALARY)  FROM COMPANY GROUP BY NAME ORDER BY NAME DESC;

十五、筛选

出现过两次以上名字的所有数据

sqlite > SELECT * FROM COMPANY GROUP BY name HAVING count(name) > 2;

十六、排重

sqlite> SELECT DISTINCT name FROM COMPANY;

(1)sqlite基础的更多相关文章

  1. SQLite基础教程目录

    SQLite基础教程目录 SQLite主页 SQLite概述 SQLite -安装 SQLite -命令 SQLite -语法 SQLite -数据类型 SQLite -创建数据库 SQLite -附 ...

  2. Sqlite基础及其与SQLServer语法差异

    1 TOP 这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录: SELECT TOP 10 * FROM [index] ORDER BY indexi ...

  3. SQLite基础回顾

    SQLite基础回顾 SQLite iOS中的数据存储方式 Plist(NSArray\NSDictionary) Preference(偏好设置\NSUserDefaults) NSCoding(N ...

  4. sqlite基础

    常用命令 sqlite3提供的特殊命令, 以.开头: .help: 帮助 .databases: 列出数据库 .tables: 列出表名 .open dbname: 打开数据库 .save dbnam ...

  5. Android学习之SQLite基础

    1.新建MySQLiteHelper类继承自SQLiteOpenHelper public class MySQLiteHelper extends SQLiteOpenHelper { privat ...

  6. Sqlite基础简介

    1.什么是SQLite ? -> SQLite简介 SQLite 是一个进程内的库,是一种轻量级的.自给自足的.无服务器的.无需配置的,事务性的SQL数据库引擎.和他其他的数据库一样,SQLit ...

  7. SQLite基础学习

    SQLite是一款轻量级数据库,集成于android中,以下从分享一下自己学习的. 在查阅资料时有一些好的说明就直接用了: 主要的curd语句 以下SQL语句获取5条记录,跳过前面3条记录 selec ...

  8. SQLite基础-1.SQL简介

    目录 一.SQLite简介 二.SQLite命令 三.SQLite安装 在 Windows 上安装 SQLite 四.SQLite 点命令 一.SQLite简介 最近在使用Python+Flask框架 ...

  9. SQLite基础-7.子句(一)

    目录 SQLite子句(一) 1. WHERE子句 2. LIKE子句 3. GLOB 子句 4. Oreder By 子句 SQLite子句(一) 1. WHERE子句 WHERE 子句后面跟着条件 ...

随机推荐

  1. python入门:in 的用法(它在不在这个字符串里面)

    #!/usr/bin/env python # -*- coding:utf-8 -*- #in 的用法(它在不在这个字符串里面) #ret(返回,译音:ruai特) #给s赋值为字符串“Alex S ...

  2. yagmail 邮箱的使用

    文章来源:GITHub:https://github.com/kootenpv/yagmail 安装 pip3 install yagmail pip3 install keyring 简单例子 im ...

  3. 用Python对微信好友进行简单统计分析,获取好友的基本信息!

      早些日子有人问我我的微信里面有一共多少朋友,我就随后拉倒了通讯录最下面就找到了微信一共有多少位好友.然后他又问我,这里面你认识多少人?这一句话问的我很无语.一千多个好友我真的不知道认识的人有多少. ...

  4. CF 510b Fox And Two Dots

    Fox Ciel is playing a mobile puzzle game called "Two Dots". The basic levels are played on ...

  5. UVALive - 8273 Assigning Frequencies (搜索 )

    n个点的一张图,问能否给每个点染上三种颜色中的一种,使得没有相邻的点颜色相同? n <= 35. Sample Input 4 6 6 0 3 1 5 3 2 2 5 0 4 1 0 7 12 ...

  6. Leetcode 145. 二叉树的后序遍历

    题目链接 https://leetcode-cn.com/problems/binary-tree-postorder-traversal/description/ 题目描述 给定一个二叉树,返回它的 ...

  7. WCF服务编程——数据契约快速入门

    WCF序列化流程 序列化 默认用户自定义类型(类和结构)并不支持序列化,因为.NET无法判断对象状态是否需要反射到流. 用户自定义类的实例支持序列化 需要添加[Serialazable].若要允许可序 ...

  8. 正则表达式 去除所有非ASCII字符

    需求: 去除字符串中包含的所有外国字符 只能使用正则如下,找到包含非ASCII的记录 db=# select * from test where info ~ '[^(\x00-\x7f)]'; id ...

  9. 九度oj 题目1460:Oil Deposit

    题目描述: The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. ...

  10. 九度oj 题目1458:汉诺塔III

    题目描述: 约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下.由小到大顺序串着由64个圆盘构成的塔.目的是将最左边杆上的盘全部移到右边的杆上,条件是一次只能移动 ...