关于.Net中使用SQLite数据库的方法

参考:

SQLite之C#连接SQLite
https://www.cnblogs.com/icebutterfly/p/7850689.html

关于SQLite的库安装比较特殊:

下载地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki --ok!
https://www.sqlite.org/download.html。---用于安卓、Mac、Linux等平台的下载。

下载安装包:
sqlite-netFx20-setup-bundle-x64-2005-1.0.108.0.exe ---测试ok!
或者 sqlite-netFx45-setup-bundle-x64-2012-1.0.108.0.exe 需要先卸载2.0版,再安装。---测试ok!
(为了与其它软件保持一致,建议安装.Net 4.5版本的!)

默认安装路径:C:\Program Files\System.Data.SQLite

.Net引用:只需引用安装bin目录下的,System.Data.SQLite.dll一个文件即可!

注意:

1、带bundle的表示动态库是按混合模式编译的,还有纯x86和纯x64模式的库,共3种,按实际需要选择。(与项目的生成--目标平台一致才行!)

2、下载的库,一定要安装,才行!!(只引用,未安装,运行会报错!!)

3、.Net使用SQLite,只需要引用System.Data.SQLite.dll,根本用不着 sqlite3.dll。没想到吧!

…………………………
SQLite 介绍:

SQLite,是一款轻型的数据库,用于本地的数据储存。开源数据库。

优点,它占用资源非常的低,在嵌入式设备中需要几百K的内存就够了;作为轻量级数据库,他的处理速度也足够快;支持的的容量级别为T级;独立: 没有额外依赖;开源;支持多种语言。

详细优点:

1、它的设计目标是嵌入式的,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

2、跨平台和多语言支持:它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,
比如C, C++, PHP, Perl, Java, C#,Python, Ruby等。

3、速度快:比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
(比一些流行的数据库在大部分普通数据库操作要快。)

4、支持数据库大小至2TB。

5、足够小, 大致13万行C代码, 4.43M

6、简单, 轻松的API

7、源码完全的开源, 你可以用于任何用途, 包括出售它。

8、它还支持事务处理功能等等。

使用.NET操作SQLLITE:

示例代码1:

public string Query()
{
string datasource = "e:/tmp/test.db";
System.Data.SQLite.SQLiteConnection.CreateFile(datasource);
//连接数据库
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
connstr.Password = "admin";//设置密码,SQLite ADO.NET实现了数据库密码保护
conn.ConnectionString = connstr.ToString();
conn.Open();
//创建表
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();
string sql = "CREATE TABLE test(username varchar(20),password varchar(20))";
cmd.CommandText = sql;
cmd.Connection = conn;
cmd.ExecuteNonQuery();
//插入数据
sql = "INSERT INTO test VALUES(‘a‘,‘b‘)";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
//取出数据
sql = "SELECT * FROM test";
cmd.CommandText = sql;
System.Data.SQLite.SQLiteDataReader reader = cmd.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (reader.Read())
{
sb.Append("username:").Append(reader.GetString(0)).Append("\n")
.Append("password:").Append(reader.GetString(1));
}
//MessageBox.Show(sb.ToString());

return sb.ToString();

}

示例代码2:事务操作:

using (SQLiteConnection conn = new SQLiteConnection(connectionString))
{
conn.Open();
SQLiteCommand cmd = new SQLiteCommand();
cmd.Connection = conn;
SQLiteTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = SQLStringList[n].ToString();
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch (System.Data.SQLite.SQLiteException E)
{
tx.Rollback();
throw new Exception(E.Message);
}

原文地址:https://www.cnblogs.com/dblg/p/9411435.html

时间: 2024-10-13 16:17:49

关于.Net中使用SQLite数据库的方法的相关文章

一种远程修改sqlite数据库的方法

一.实际需求 工业设备DA660是专门用来实现工业上可编程设备之间交换信息的交换机.现在要使得DA660采集下行设备的实时数据,然后传送到上位机显示.上位机还可以远程修改DA660的数据库配置. 二.数据库设计 我在DA660中设计了sqlite3数据库,名为da660.db,里面存放很多表,其中有一张表示baseinfo,其结构定义如下: 通道号是从0到15之间的正整数,从机地址是从0到256之间的正整数,设备类型定义为0到5之间的正整数,设备类型可从{"xz2000", "

在 Android 应用程序中使用 SQLite 数据库以及怎么用

part one : android SQLite 简单介绍 SQLite 介绍 SQLite 一个非常流行的嵌入式数据库.它支持 SQL 语言,而且仅仅利用非常少的内存就有非常好的性能.此外它还是开源的,不论什么人都能够使用它.很多开源项目((Mozilla, PHP, Python)都使用了 SQLite. SQLite 由下面几个组件组成:SQL 编译器.内核.后端以及附件.SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE).使调试.改动和扩展 SQLite 的内核变得更加方便. 图

在android中使用SQLite数据库

SQLite数据库以其轻量.体积小等特点,使其在开发中运用的非常广泛,在前面的博客中我也介绍过在Cocos2d-x中使用SQLite数据库,这篇博客是介绍在Android中使用SQLite数据库,Android中直接集成了SQLite数据库,使用起来非常方便,不需要向Cocos2d-x中那样添加外部文件 我将使用SQLite数据库实现一个下图所示的效果,打开app后会弹出下图所示的界面 单击createDatabase按钮后,在logcat中可以看到打印了一条提示信息,表示数据库创建成功,当再次

详解Android中的SQLite数据库存储

前言 在Android中存储数据的方式有很多种,其中使用SQLite数据库是存储结构化数据的最佳选择.幸运的是,Android中默认提供了对SQLite的支持,这就使得在Android中使用SQLite数据库变得格外方便. 支持的数据类型 SQLite是一款轻量级的数据库,其支持的数据类型也很简单,主要有以下几种: text:字符类型 real:浮点类型 integer:整数类型 blob:二进制数据类型 创建数据库 SQLite数据库的使用始于SQLiteOpenHelper这个抽象类.我们需

Navicat for SQLite 连接Sqlite数据库的方法

Navicat for SQLite 配备了数据编辑.SQL查询和数据模型工具,并支持所有SQLite对象类型.其主要功能有数据传输.数据同步.导入或导出.报表等.其凭借设计的方便快捷的用户界面,并且用户创建.组织.访问和共享信息都非常的简便快捷,优化SQLite工作流程,提高工作效率.下面我们将给大家介绍介绍Navicat for SQLite 连接Sqlite数据库的方法? 原文:http://www.formysql.com/jiqiao/sqlite-lianjie.html Navic

在安卓开发中使用SQLite数据库操作实例

前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tc

Go语言中使用SQLite数据库

Go语言中使用SQLite数据库 1.驱动 Go支持sqlite的驱动也比较多,但是好多都是不支持database/sql接口的 https://github.com/mattn/go-sqlite3 支持database/sql接口,基于cgo(关于cgo的知识请参看官方文档或者本书后面的章节)写的 https://github.com/feyeleanor/gosqlite3 不支持database/sql接口,基于cgo写的 https://github.com/phf/go-sqlite

Android中使用Sqlite数据库 (一) 建表

一.实现一个类,继承SQLiteOpenHelper类,并实现构造函数,onCreate()  onUpgrade() import android.content.Context; import android.database.DatabaseErrorHandler; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; impo

Android中使用Sqlite数据库 (二) 增删改查

定义接口 package com.example.android_db.service; import java.util.List; import java.util.Map; public interface PersonService { public boolean addPerson(Object[] params); public boolean deletePerson(Object[] params); public boolean updatePerson(Object[] p