我们正在创建一个会计类型应用程序,需要知道一些数据库使用的选项,而无需用户安装数据库。我知道有一些方法可以做到这一点,但我想就最佳方式以及在哪里找到更多相关信息提出一些意见。
答案 0 :(得分:4)
有两个非常可行的选择:
这两个选项都是基于文件的,它们具有功能齐全的ADO.NET API。
答案 1 :(得分:0)
我认为你可以查看VistaDB。我们已经在我们公司使用这个数据库4 - 5年,它符合我们的目的。您无需在部署期间安装任何软件。您的所有数据都将位于.vdb3文件中。我最喜欢的功能是“Pack”,它将重新索引您的数据,保存文件大小并保持高性能。你也可以从代码中做到这一点。他们在新版本中支持实体框架。他们的示例代码很有用,您可以立即开始编码。在线支持也很棒。
答案 2 :(得分:0)
没有任何东西你可以立即开始使用OleDB
(例如可怕,但它的MSDN)和MS Access(mdb)数据库。
创建数据库(使用ADOX)
Type typeAdox = Type.GetTypeFromProgID("ADOX.Catalog");
object objAdox = Activator.CreateInstance(typeAdox);
typeAdox.InvokeMember("Create", BindingFlags.InvokeMethod, null, objAdox, new object[] { "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + file });
Marshal.ReleaseComObject(objAdox);
创建表
using (OleDbConnection connection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + file))
{
connection.Open();
OleDbCommand command = new OleDbCommand("CREATE TABLE trololol (id datetime NOT NULL PRIMARY KEY, blob longbinary)", connection);
command.ExecuteNonQuery();
}
依旧......
答案 3 :(得分:0)
Microsoft SQL Server LocalDB(announcement - MSDN),与.NET和EF兼容。
需要一个小的msi作为安装运行,但它可以与应用程序的安装完全捆绑在一起(或者它可以在首次运行时执行。)