Windows下C#连接和操作SQLite数据库

本文仅用于简单说明C#连接和访问SQLite数据库的一些操作,不含其他诸如原理性、解释性的说明。主要用于自己及其他新入人员初学时配置

[b]1. 环境准备[/b]
[b]SQLite:[/b][url=http://www.sqlite.org/download.html] SQLite Official[/url]
根据自己需要下载不同系统的物品。比如我下的就是WindowsOS下预编译的exe、Dll.

[b]GUI Tool: [/b] [url=http://download.cnet.com/3001-2065_4-75331715.html?spi=df60336775901f0489ea791591bc1589&dlm=0]SQLite Expert Personal Edition 个人版是Free的[/url]

[b]Wrapper:[/b][url=http://sqlite.phxsoftware.com/]System.Data.SQLite[/url]
完全支持.Net2.0, 几乎能完全支持.Net 3.5。这个DLL已经包装了sqlite3.dll。

2. 使用SQLite Expert Personal Edition创建数据库和表格
当安装完毕SQLite Expert Personal Edition这个GUI工具之后,双击打开,创建数据库和表格,比较简单,你可以参考[url=http://www.sqliteexpert.com/tutorials.html]官网上的操作参考视频[/url]

3. C# 建立一个普通的Console工程
在该工程上引入System.Data.SQLite.DLL(即wrapper),无需引入SQLite3.dll,因为前者已经包装了后者。
在代码中import下: "using System.Data.SQLite;"


using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SQLite;

namespace TestSQLite
{
class MyCSharpSQLite
{
private static string connStr;

static void Main(string[] args)
{

connStr = SQLiteConnectionString.GetConnectionString(".\\Data\\EasyDataBase.db");
Console.WriteLine("SQLite Connect String is : {0}", connStr);

//连接测试
//testConnect(connStr);

//执行查询
ExecQuery("select * from customers");

Console.ReadKey();
}

private static void testConnect(string connStr)
{
try
{
SQLiteConnection conn = new SQLiteConnection(connStr);

conn.Open();
Console.WriteLine("SQLite Connect OK.");
}
catch (Exception ex)
{
Console.WriteLine("SQLite Connect fail: {0} ", ex.Message);
}
}

private static void ExecQuery(string sqlStr)
{
Console.WriteLine(">> Start to query the database....");
using (SQLiteConnection conn = new SQLiteConnection(connStr))
{
conn.Open();
SQLiteCommand comm = conn.CreateCommand();
comm.CommandText = sqlStr;
//comm.CommandType = comm.CommandText;

using (SQLiteDataReader reader = comm.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine(reader[1].ToString());
}
}
}
}


}

/// <summary>

/// 生成SQLite连接字符串

/// </summary>

public static class SQLiteConnectionString
{

public static string GetConnectionString(string path)
{
return GetConnectionString(path, null);
}

public static string GetConnectionString(string path, string password)
{
if (string.IsNullOrEmpty(password))
{
return "Data Source=" + path;
}
else
{
return "Data Source=" + path + ";Password=" + password;
}
}

}
}



先说到这里,后续再补充其他。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值