公众号「DotNet学习交流」,分享学习DotNet的点滴。
sqlite简介
sqlite是一种轻量级的关系型数据库管理系统(RDBMS),它以一个C库的形式提供。以下是sqlite数据库的一些关键特点:
1、无服务器: sqlite是一种无服务器的数据库管理系统,这意味着它不需要单独的服务器进程来运行。应用程序直接与sqlite库交互,而不是通过一个独立的数据库服务器。
2、自包含: 整个数据库被存储在一个单独的磁盘文件中。这使得sqlite数据库非常易于传输、备份和共享。
3、零配置: sqlite不需要繁琐的配置。你可以通过简单地打开一个文件来创建数据库,而不需要进行额外的设置或管理。
4、事务支持: sqlite支持事务,这是数据库管理系统中的重要概念。事务确保数据库操作的原子性,要么全部完成,要么全部取消。
5、跨平台: sqlite是跨平台的,可以在多种操作系统上运行,包括Windows、macOS和Linux。
6、嵌入式数据库: 由于其轻量级特性,sqlite经常被嵌入到应用程序中,作为应用程序的一部分运行。这种方式不需要单独的数据库服务器进程,适用于嵌入式系统和资源有限的环境。
7、多语言支持: sqlite有许多编程语言的绑定,包括C、C++、Java、Python、Ruby等,使其易于与各种编程语言集成。
8、高性能: 尽管它是一个轻量级的数据库引擎,但sqlite提供了良好的性能,尤其适用于小型项目和嵌入式系统。
sqlite下载安装
打开sqlite官网,点击下载按钮,如下所示:
根据电脑的系统选择合适的版本下载,如下所示:
解压之后,如下所示:
在命令行窗口中,输入sqlite3,出现如下所示内容,则安装成功。
使用sqlite
连接名随便写,选择新建sqlite3数据库,再选择一个放数据库的地方,一般可以选择放在项目文件中,如下所示:
使用sqlSugar操作sqlite数据库
安装sqlSugar,如下所示:
注意根据版本选择合适的nuget包,我这样是用的.NET 8所以选择安装sqlSugarCore。
与连接MysqL数据不同的就是连接字符串的写法
//public static string sqlitePath = Path.Combine(Environment.CurrentDirectory, "demo.db");
public static string sqlitePath = Application.StartupPath + "demo.db";
public static string ConnectionString = "DataSource=" + sqlitePath;
sqlSugarClient db = new sqlSugarClient(new ConnectionConfig()
{
DbType = sqlSugar.DbType.sqlite,
ConnectionString = ConnectionString,
IsAutoCloseConnection = true
});
可以使用绝对路径也可以使用相对路径,但是为了便于移植,推荐使用相对路径,下面两种写法都可以。
//public static string sqlitePath = Path.Combine(Environment.CurrentDirectory, "demo.db");
public static string sqlitePath = Application.StartupPath + "demo.db";
要注意Environment.CurrentDirectory和Application.StartupPath的路径都如下所示:
使用Navicat在数据库中建表,如下所示:
将表名命名为Student如下所示:
在项目中新建Student类如下所示:
public class Student
{
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
public int Id { get; set; }
public string? Name { get; set; }
}
点击测试按钮的代码如下:
public void button1_Click(object sender, EventArgs e)
{
var stu = new Student();
stu.Name = "小明";
db.Insertable(stu).ExecuteCommand();
}
运行结果,如下所示:
成功将数据写入sqlite中,那么其他的增删改查也同样可以实现,这里就不再赘述了,可以查看sqlSugar的官网。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。