SQL CE 3.0嵌入式数据库说明

轻量数据库的刚需工具就是它了。SQL CE 3.0是微软出的嵌入式数据库,跑在WinCE5.0这种老设备上合适,占用资源少,功能却挺全的。你要是在搞嵌入式或者老旧设备的项目,这玩意儿还挺靠谱。

SQL CE 3.0 的安装其实不复杂,只要设备跑的是WinCE5.0,并装了.NET Compact Framework 2.0 SP2就差不多了。装包传上去,一路点安装就行。嗯,老派点的流程,但不折腾。

建库的方式有两种:一种是写代码,比如用SqlCeEngine来搞;另一种是靠工具,像SQL Server Compact Toolbox,有命令行也能上手。用代码像这样:

using System.Data.SqlServerCe;
...
SqlCeEngine engine = new SqlCeEngine("Data Source=myDatabase.sdf");
engine.CreateDatabase();

建表和查询也都挺标准的,CREATE TABLESELECTINSERT这些 SQL 操作照样支持,语法不陌生:

CREATE TABLE Customers (
  ID int PRIMARY KEY,
  Name nvarchar(50),
  Address nvarchar(100)
);

INSERT INTO Customers (ID, Name, Address) VALUES (1, 'Jane', '123 Main St');

事务也能搞,用SqlCeTransaction加上SqlCeConnection,能完整控制提交和回滚:

using (SqlCeConnection conn = new SqlCeConnection("Data Source=myDatabase.sdf")) {
  conn.Open();
  using (SqlCeTransaction trans = conn.BeginTransaction()) {
    using (SqlCeCommand cmd = new SqlCeCommand("INSERT INTO...", conn)) {
      cmd.Transaction = trans;
      cmd.ExecuteNonQuery();
    }
    trans.Commit();
  }
}

性能优化?别忘了加索引,查询快。还有,参数化查询不只是安全,也是规范。

数据库备份就直接复制.sdf文件,想自动化点可以用BackupDatabase方法,恢复同理。

如果你还在折腾嵌入式开发,尤其跟WinCE5.0相关的项目,SQL CE 3.0是个你不该忽略的利器。要是喜欢探索别的方案,也可以看看lapisdbEasyTable,思路更现代点。

zip 文件大小:76.56KB