SQLiet介绍和通过postman连接数据库简单使用!

本文介绍了SQLite,一个无需服务器配置的轻量级数据库,其特点包括自给自足、无配置、事务性SQL支持。文章详细讲解了SQLite的SQL语法、存储类型(如布尔值和整数/浮点/文本/BLOB),以及如何进行表操作(如创建、插入、查询、修改和删除)。还涉及了SQLite的类型亲缘性概念,确保数据兼容性。
摘要由CSDN通过智能技术生成

SQLite :

  • 简介:
    SQLite是一个进程内的轻量级嵌入式数据库,它的数据库就是一个文件,实现了自给自足、无服务器、零配置的、事务性的SQL数据库引擎。它是一个零配置的数据库,这就体现出来SQLite与其他数据库的最大的区别:SQLite不需要在系统中配置,直接可以使用。且SQLite不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite可直接访问其存储文件
  • 语法:
    1.(不区分大小写)SQLite 是不区分大小写的,但也有一些命令是大小写敏感的,比如 GLOB 和 glob 在 SQLite 的语句中有不同的含义。
    2.(注释)SQL 注释以两个连续的 “-” 字符(ASCII 0x2d)开始,并扩展至下一个换行符(ASCII 0x0a)或直到输入结束,以先到者为准。或者 以 “/* ” 开始,并扩展至下一个 ” */” 字符对或直到输入结束,以先到者为准。SQLite的注释可以跨越多行。.
    3.(语句以 ;结束)所有的 SQLite 语句可以以任何关键字开始,如 SELECT、INSERT、UPDATE、DELETE、ALTER、DROP 等,所有的语句以分号(;)结束
  • 存储类型:
    在这里插入图片描述

在这里插入图片描述

SQLite 没有单独的 Boolean 存储类。相反,布尔值被存储为整数 0(false)和 1(true)
NULL: 表示该值为NULL值。
INTEGER: 无符号整型值。
REAL: 浮点值。
TEXT: 文本字符串,存储使用的编码方式为UTF-8、UTF-16BE、UTF-16LE。
BLOB: 存储Blob数据,该类型数据和输入数据完全相同。

  • 命令;
//sql命令一定要以“;”结束
//以下以表stdinfo为例
创建表:     create table stuinfo(id integer, name text, age integer, score integer); 
插入记录:insert into stuinfo values(1, 'Andy', 30, 99.9);
         insert into stuinfo(id, name, score) values(2, 'Amy', 100);
查看记录:select * from stuinfo;
         select * from stuinfo where score = 100;
         select * from stuinfo where score = 99.9 and name = 'Andy';
         select * from stuinfo where score = 99.9 or name = 'Amy';
         select * from stuinfo where score > 80 and score < 100;
         select name,score from stuinfo; //查询指定的字段
删除记录:delete from stuinfo where id = 1 and name = 'Andy';
更新记录:update stuinfo set age = 20,score = 100 where id = 1;
增加一列:alter table stuinfo add column sex char;
删除一列:create table stu as select id, name, score from stuinfo;    //从stuinfo中复制新表(不包含要删除的列)
         drop table stuinfo; //删除老的表stuinfo
         alter table stu rename to stuinfo;    //将新表stu重命名为stuinfo,完成删除列的操作
删除表:  drop table stuinfo;
/***设置主键***/
设置主键: create table table_name(column1 datatype PRIMARY KEY, column2 datatype, ……);
//PRIMARY KEY表示该列为该表的“主关键字”,主关键字用于唯一索引表内的某一条记录,主关键字必须唯一且主关键字的列值不能为空
select * from person where id<>1 //表示查询这张表 id不等于1的所有数据 <>表示不等于 
select name from sqlite_master where type='table' order by name;//sqlite查看所有表名 如果type段是’index’, 则name是index的名字,`tabl_name是index所拥有的table的名字。
PRAGMA table_info([tablename]) //sqlite查看某表的字段名称
select count(LineName) from test; //sqlite查询某表的某列的行数 当LineName为*时,表示整个数据表的行数,当某一列有null时,行数部计数
select * from table_name limit 1 offset (select count(*) - 1 from table_name); //sqlite查询某表最新一行的数据
select * from table_name limit 1 offset (select count(*) - count(*) from table_name);    //sqlite查询某表的第一条数据
select * from test limit LineSum; //sqlite查询某表最早的指定的数据条数
- 类型亲缘型:
为了最大化SQLite和其它数据库引擎之间的数据类型兼容性,SQLite提出了"类型亲缘性(Type Affinity)"的概念。我们可以这样理解"类型亲缘性 ",在表字段被声明之后,SQLite都会根据该字段声明时的类型为其选择一种亲缘类型,当数据插入时,该字段的数据将会优先采用亲缘类型作为该值的存储方式,除非亲缘类型不匹配或无法转换当前数据到该亲缘类型,这样SQLite才会考虑其它更适合该值的类型存储该值。
SQLite目前的版本支持以下五种亲缘类型:
1.TEXT:数值型数据在被插入之前,需要先被转换为文本格式,之后再插入到目标字段中
2.NUMERIC:当文本数据被插入到亲缘性为NUMERIC的字段中时,如果转换操作不会导致数据信息丢失以及完全可逆,那么SQLite就会将该文本数据转换为INTEGERREAL类型的数据,如果转换失败,SQLite仍会以TEXT方式存储该数据。对于NULLBLOB类型的新数据,SQLite将不做任何转换,直接以NULLBLOB的方式存储该数据。需要额外说明的是,对于浮点格式的常量文本,如"30000.0",如果该值可以转换为INTEGER同时又不会丢失数值信息,那么SQLite就会将其转换为INTEGER的存储方式。
3.INTEGER:对于亲缘类型为INTEGER的字段,其规则等同于NUMERIC,唯一差别是在执行CAST表达式时。
4.REAL:其规则基本等同于NUMERIC,唯一的差别是不会将"30000.0"这样的文本数据转换为INTEGER存储方式
5.NONE:不做任何的转换,直接以该数据所属的数据类型进行存储
  • 测试接口
    1.建表
    在这里插入图片描述在这里插入图片描述

2.新增
在这里插入图片描述在这里插入图片描述

3.查询
在这里插入图片描述

4.修改

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值