SQL常见命令
简介:
轻型,嵌入式,ACID关系型数据库
A原子型 / C一致性 / I隔离性 / D持久性
MySQL启动后会有一个独立的进程,应用与该进程对接;
SQLite是一个API库,数据库引擎库;SQLite运行在自己的应用程序进程中。
SQLite优点:
轻量高效;
绿色无需安装;
零配置;
动态数据类型
SQLite缺点:
并发性能;
数据类型:
NULL: 这个值为空值
VARCHAR(n):长度不固定且其最大长度为 n 的字串,n不能超过 4000。
CHAR(n):长度固定为n的字串,n不能超过 254。
INTEGER: 值被标识为整数,依据值的大小可以依次被存储为1,2,3,4,5,6,7,8.
REAL: 所有值都是浮动的数值,被存储为8字节的IEEE浮动标记序号.
TEXT: 值为文本字符串,使用数据库编码存储(TUTF-8, UTF-16BE or UTF-16-LE).
BLOB: 值是BLOB数据块,以输入的数据格式进行存储。如何输入就如何存储,不改 变格式。
DATA :包含了 年份、月份、日期。
TIME: 包含了 小时、分钟、秒。
建表:
建表:CREATE TABLE IF NOT EXISTS table_name (col_name_1 datatype, col_name_2, datatype);
CREATE INDEX 语句用于在表中创建索引。您可以在表中创建索引,以便更加快速高效地查询数据。用户无法看到索引,它们只能被用来加速搜索/查询。
在表上创建一个简单的索引。允许使用重复的值:CREATE INDEX index_name ON table_name (column_name)
在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值:CREATE UNIQUE INDEX index_name ON table_name (column_name)
更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。
SQLite数据库中索引的使用、索引的优缺点:https://blog.csdn.net/zbc415766331/article/details/55053224
Sqlite中INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用:https://www.cnblogs.com/peida/archive/2008/11/29/1343832.html
Sqlite中的rowid字段和integer primary key autoincrement的字段区别:https://blog.csdn.net/maxwell_nc/article/details/48766223?utm_source=blogxgwz6
sqllite 自增id和rowid的一个区别:https://blog.csdn.net/qq_16383977/article/details/79630042
深入理解SQLite3之sqlite3_exec及回调函数:https://blog.csdn.net/u012351051/article/details/90382391
插入:
插入语句,在表中创建一条记录:INSERT INTO COMPANY (ID, NAME, AGE, ADDRESS, SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 );
更新:
UPDATE COMPANY SET ADDRESS = 'Texas' WHERE ID = 6;
UPDATE 表名 SET 字段名 = 字段值 WHERE 过滤字段名 = 过滤字段值;
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE [condition];
查询:
支持升降序,分页
asc //升序
desc //降序
select * from tb_shop id order by id desc limit 0,1;
分页:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
SELECT * FROM %s %s ORDER BY seq LIMIT %d OFFSET %d
select * from table limit 5; --返回前5行
select * from table limit 0,5; --同上,返回前5行
select * from table limit 5,10; --返回6-15行
//limit skip,count
删表:
drop table table_name
删除:
delete from table_name where xxxx and xxxx;
其他:
打开数据库
sqlite3 xxx.db
sqlite> 下的操作:
.table 查看数据库中存在哪些表;
.tables 数据库内的表格
.schema 查看建表语句
.databases 数据库的路径
..> 下的操作:
进入到这里是SQL数据语言模式了,需要输入完整的SQL语句,即结尾要加 ; (分号)。
SQLite 是不区分大小写的,但也有一些命令是大小写敏感的,比如 GLOB 和 glob 在 SQLite 的语句中有不同的含义。记得是用分号结束语句。
这里比较牛一点的感觉就是创建的数据库后缀名是任意的、不过注意一点就是:在命令框下执行创建数据库的时候。如果没有为数据库创建表格、则看不见数据库文件,所以必须创建表格。
所有的 SQLite 语句可以以任何关键字开始,如 SELECT、INSERT、UPDATE、DELETE、ALTER、DROP 等,所有的语句以分号(;)结束。
NOT NULL 的约束表示在表中创建纪录时这些字段不能为 NULL;
参考链接:
SQLite常见命令:https://www.cnblogs.com/senior-engineer/p/7028972.html
SQL常见命令的更多相关文章
- SQL常见笔试面试题
sql理论题 1.触发器的作用? 答:触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的.它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化.可以 ...
- PL/SQL常见设置--Kevin的专栏
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- mysql 性能优化常见命令
mysql 性能优化常见命令: 一: 当发现mysql程序运行缓慢时,在排除sql主机问题之后,可以尝试在schema,table,和sql上进一步进行考查: 1:mysql> show ful ...
- MySql常见命令、函数
⒈常见命令 命令 说明 show databases; 显示数据库列表 use DataBaseName; 打开指定的数据库 show tables; 显示当前打开数据库的表列表 show table ...
- win+ R下的常见命令
-------------------------电脑运行常见命令----------------------------- Windows+R输入cmd 运行net start mssqlserve ...
- 【Oracle】曾经的Oracle学习笔记(1-3) 数据库常见用语,常见命令,创建测试表
一.数据库的登录 二.数据库常用语 三.测试表的创建,测试数据初始化 四.常见命令介绍 五.测试 user:jeffreysn:jeffrey user:systemsn:jeffrey 浏览器中输入 ...
- 经典MSSQL语句大全和常用SQL语句命令的作用
下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL类型包括数据库.表的创建,修改,删除,声明—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML类 ...
- MySQL数据库常见命令
数据库的操作 MySQL服务器的常见命令 开启:sudo service mysql start关闭:sudo service mysql stop重启:sudo service mysql rest ...
- 2 . Linux常见命令
Linux常见命令格式: 命令名称 选项 参数 ls -alh 文件/目录 --all #ls 显示当前目录内容 #ls -l 显示文件详细信息 #ls -hl h已常见单位显示文件大小 k M G# ...
随机推荐
- UVA_401:Palindromes
AC:Time(29ms) C++ 4.8.2 #include<stdio.h> #include<string.h> char * mirstr = "A ...
- Vue CLI图形化创建项目
- 当async/await碰见forEach-------------爆炸
let p = ['http://img3.imgtn.bdimg.com/it/u=3278834702,2663618759&fm=26&gp=0.jpg', 'http://im ...
- HZOJ Blue
Blue: 贪心. 我们不妨给蛤定一个先后顺序,则贪心策略即从右至左每只蛤依次往最远的石子跳. 证明: 如果最右的蛤不往最远的石子跳,而是选择了一个较近的石子,那么必然会存在一个该蛤左边的蛤越过了它跳 ...
- jQuery 无刷新评论
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- QQ 聊天机器人API
QQ机器人是腾讯陆续推出的的人工智能聊天机器人的总称. 都说小Q妹妹聪明好学,我们能够教她说话.也能够请他帮忙查询邮编.手机号,或者解释成语.翻译成语,据说她还会查询手机号码归属地.应用科学计算器. ...
- 源映射错误:request failed with status 404
源映射错误:request failed with status 404:源映射错误:request failed with status 404
- php函数nl2br的反函数br2nl
真是搞不明白,php里有nl2br这样的好函数,但是为什么就没有它的反函数呢?只好自己在网站找了一个br2nl.分两个版本:php和javascript的. php版的代码如下: function b ...
- ELMo解读(论文 + PyTorch源码)
ELMo的概念也是很早就出了,应该是18年初的事情了.但我仍然是后知后觉,居然还是等BERT出来很久之后,才知道有这么个东西.这两天才仔细看了下论文和源码,在这里做一些记录,如果有不详实的地方,欢迎指 ...
- sleep usleep nanosleep alarm setitimer使用
sleep使用的是alarm之类的定时器,定时器是使得进程被挂起,使进程处于就绪的状态. signal+alarm定时器 alarm参数的类型为uint, 并且不能填0 #include <st ...