SQLite数据库

SQLite数据库

SQLite,是一款轻型的数据库,它包含在一个相对小的C库中。它的设计目标是嵌入式的,占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比它们都快。

数据库操作

开发工具下的操作,不用使用shell来进行库管理

1. SQLite Studio下的数据库操作

SQLite Studio下载
链接:https://pan.baidu.com/s/1Gsvh2Uiw7QBnoX0t26oOjg
提取码:7sda

1.1 创建数据库
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.2 创建数据表(存放数据的表)
在这里插入图片描述

1.3 填写数据表名称,为表添加列
在这里插入图片描述
例如:添加id列:
在这里插入图片描述

一般情况下我们都会将id 作为数据条目的唯一标识,这个id 由数据库自动维护而不是我们手动维护,此时就要将这个id列设置为主键(Primary key)。

1.4 为表添加数据

数据库与数据表创建好之后,就是对数据进行操作,即进行增删改查工作

SQLIte的SQL语法

插入数据Insert(大小写都可以)

插入单条数据:

  INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)]
  VALUES (value1, value2, value3,...valueN);
  columnN//是要插入数据的表中的列的名称

插入多条数据:

INSERT INTO TABLE_NAME VALUES
(value1,value2,value3,...valueN),
(value1,value2,value3,...valueN)...;

例:

  insert into tible values
    (null,'小王',20,0),
    (null,'小赵',20,0)

where 子句

用于指定从一个表或多个表中获取数据的条件,如果满足条件,则为真,返回特定的值,where子句不仅可以用在select子句中,它也可以用在update,delete语句中

SELECT column1, column2, columnN
FROM table_name

WHERE [condition]
例:

```csharp
select *from suudent where name = '刘鹏'

运算符

筛选所需要的数据

(1)比较运算符

==

!= 不相等条件为真
<> 不相等则条件为真

(2)逻辑运算符 and or in等

update语句(改)

用于查询修改表中已有的数据
update students set name=‘张三’,age=33 where id=5;

例2:
对id为5的学生进行逻辑删除
update students set isdelete=1 where id=5;
select * from students where isdelete=0;

delete子句(删)
删除表中已有的记录

like子句
SQLite 的like运算符是用来匹配通配符指定模式的文本值

百分号(%) : 代表任意多的数字或字符
下划线(_) :代表一个单一的数字或者字符

例如

(1):select name,age from students where name like '%红';
(2):select name,age from students where name like '_红';
(3):select name,age from students where name like '王%';

姓名以红结尾的学生信息

姓名以红结尾的姓名为两个字的学生信息

姓名以王开头的学生信息

C#调用SQLite接口

SQLite.NET 也是一个数据访问组件,其中System.Data.SQLite 就好像是.NET 自带的

System.Data.SqlClient 一样。里面包含connection、command 等数据访问的常用对象,只是它们前面都有一个前缀sqlite。下载最新版SQLite,SQLite-1.0.66.0-setup.exe,安装完成后会生成动态链接System.Data.SQLite.DLL,在项目中直接引用System.Data.SQLite即可

一般来说,这样对数据库的操作的代码,都是写在类库里面的,这里需要注意的地方是,在编写对SQLite 使用的类库时,在类库中只需引用System.Data.SQLite.dll,文件放在什么地方无所谓,只要能引用就行
using System.Data.SQLite;

SQLite,SQLite-1.0.66.0-setup.exe下载:
链接:https://pan.baidu.com/s/1mYf-71MAK8xxqJvPvSGTwA
提取码:suqq

在vs中出现如下异常的解决办法:

异常:混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。

在App.config文件中添加如下配置节:

<startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
</startup>

(1)引用System.Data.SQLite.dll
(2)代码编写,创建数据库,添加数据表,对表进行增删查改操作

创建一个空的数据库

SQLiteConnection m_dbConnection;   创建数据库连接
SQLiteConnection.CreateFile("MyDatabase.sqlite"); MyDatabase.sqlite可以是自定义表名

连接到指定的数据库

 m_dbConnection = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;");
 m_dbConnection.Open();

在指定数据库创建数据表(highscores 为对应的表名)

string sql = "create table highscores (id int, name varchar(20), score int)";
SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();//ExecuteNonQuery方法主要用来更新数据。
ExecuteNonQuery方法主要用来更新数据。

插入数据(highscores 为对应的表名)

string sql = "insert into highscores (id, name, score) values (1, 'Me', 3000)";
SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();

更多精彩内容,关注公众号:

LLP学嵌入式

在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值