SQL数据库-SQL命令-SQL语言

我要成为嵌入式高手之3月12日Linux高编第二十天!!


数据库软件

关系型数据库:

Mysql

Oracle

SqlServer

Sqlite

非关系型数据库(相当于在内存中搞了一块空间),能够快速完成对用户的响应

Redis

NoSQL

一、数组、链表、文件、数据库

数组、链表:内存存放数据(程序结束数据丢失)

文件、数据库:外存存放数据的方式(程序结束数据不会丢失)

文件:数据量很小 处理效率很低

数据库:数据量很大 处理数据(增删改查)效率高

二、安装sqlite数据库

1、让虚拟机上网

2、apt---get工具集配置好

3、sudo apt-get install sqlite3

4、启动sqlite3

5、输入.quit退出

三、SQL命令

1、.header(s) ON|OFF 打开/关闭 数据库中列名称

2、.mode MODE设置输出格式

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| * csv 逗号分隔的值 * column 左对齐的列 * html HTML 的 <table> 代码 * insert TABLE 表的 SQL 插入(insert)语句 * line 每行一个值 * list 由 .separator 字符串分隔的值 * tabs 由 Tab 分隔的值 * tcl TCL 列表元素 |

3、.schema 表名称 ---查看表名称对应的表的格式(有哪几列?每一列类型?)

4、.width 宽度---设置显示时的数据宽度

5、.tables 查看数据库当中的所有表

四、SQL语言

数据的:增、删、改、查

1、使用sqlite3打开数据库文件

sqlite3 + 数据库文件名

sqlite3 student.db

2、创建表

create table

示例:

sqlite> create table student (id integer, name varchar(255), sex varchar(32), age integer, score integer);

3、插入数据

insert into

示例:

sqlite> insert into student values (1001, "张三", "男", 19, 80);

sqlite> insert into student (id, name, score) values (1002, "李四", 100);

sqlite> insert into student values (1002, "王二", "女", 18, NULL);

4、查找数据

select

示例:

sqlite> select * from student;

sqlite> select name, score from student;

5、内容匹配

where

示例:

sqlite> select * from student where name like "%张%";

6、主键

key:键值

primary key:设置为键值

primary key asc:id自动增长

内键:在表中唯一标识一条数据称为内键

外键:与外部表进行标识的数据称为外键

7、删除

delete from

示例:

delete from 表名字 where 信息

8、修改

update

  1. UPDATE table_name
  2. SET column1 = value1, column2 = value2...., columnN = valueN
  3. WHERE condition;

示例:

update buyorder set contact="王五",produce="华为" where id=10;

9、排序

order by

asc升序、desc降序

select * from buyorder order by time desc;

select * from buyorder order by time asc;

多表联合查询:

1、交叉连接

cross join

A∪B(A表当中每一项和B表当中每一项做连接)

2、内连接

inner join

A∩B(AB共同部分)

3、外连接

outer join

A∪(A∩B)

相关推荐
DongQiShanRen2 小时前
六根硬件映射(下):物理闭环五步法,抽一条已实装的看
大数据·jvm·人工智能·算法·rust·哈希算法·集成学习
乌暮2 小时前
从 `println` 到生产级日志:Spring Boot 日志体系完全指南
java·开发语言·jvm·spring boot·后端·学习·面试
Sayai4 小时前
Java 进程 Unable to create new native thread 排查实战:Linux 线程数五层限制与 JVM -Xss 调优
java·linux·运维·jvm·性能优化
wuminyu4 小时前
Continuation::freeze与thaw的x86_64汇编Stack Chunk拆解源码分析
java·linux·c语言·汇编·jvm·c++
金銀銅鐵15 小时前
[Java] 借助GUI展示class文件的内容(v1.0版本)
jvm·后端·ai编程
kunicoding17 小时前
多线程编程核心概念详解:从线程基础到并发安全
java·jvm·安全
云老大-阿里云国际站代理商1 天前
华为云国际站渠道代理商:CSS查询很慢但CPU不高?磁盘I/O、JVM与分片问题怎么排查
css·jvm·华为云
呆呆虫121 天前
SerpBase 省 credit 实战:缓存 + 去重,把重复请求砍掉一半
jvm·缓存
戴西软件1 天前
企业如何搭建自己的AI智能体?戴西智能体管理与戴西SKILL管理实战解析
运维·jvm·人工智能·自动化·rpa
小张成长计划..2 天前
【Linux】25:线程概念和控制
java·linux·jvm