C# 本地数据库,我需要一些例子
我正在制作一个将在多台计算机上安装和运行的应用程序,我的目标是制作一个空的本地数据库文件,该文件随应用程序一起安装,当用户使用应用程序时,他的数据库将填充应用程序中的数据。 你能给我举几个例子吗C# 本地数据库,我需要一些例子,c#,database,C#,Database,我正在制作一个将在多台计算机上安装和运行的应用程序,我的目标是制作一个空的本地数据库文件,该文件随应用程序一起安装,当用户使用应用程序时,他的数据库将填充应用程序中的数据。 你能给我举几个例子吗 我需要做什么才能让我的应用程序连接到其本地数据库 如何使用应用程序中的变量执行查询例如,如何向数据库添加以下内容 String abc = "ABC"; String BBB = "Something longer than abc"; 等等 编辑:: 我正在使用从“添加>新建项目>本地数据库”创建
String abc = "ABC";
String BBB = "Something longer than abc";
- -制作一个将在多个服务器上安装和运行的C#应用程序 计算机
- -这需要一个本地数据库(我假设是RDBMS)
- -您需要在安装时生成一个空白数据库
- -然后,您需要能够连接到数据库并在需要时填充它 应用程序运行
一般来说,您似乎需要了解如何为应用程序使用小型数据库引擎。我首先要检查一下,特别是如果您需要多操作系统功能(例如,您的C#程序将在Microsoft的.NET Framework和Novell的Mono上运行)。有用于访问SQLite数据库的C#包装器。您认为什么是数据库?根据您在问题中提供的少量信息,我建议使用SQLite
您可以从他们的站点获得示例代码我不确定我是否完全理解您的要求,但是Sqlite是轻量级、本地部署的数据库持久性的一个很好的选择。请看这里: 这里是ADO.NET提供程序
我没有看到任何人建议使用SQL Compact;它与SQLite类似,不需要安装,也不需要定制低端数据库。它源于SQL Mobile,因此占地面积小,功能集有限,但如果您熟悉Microsoft的SQL产品,则应该对它有所了解
SQL Express是另一种选择,但请注意,它需要独立安装,并且比应用程序的本地缓存可能需要的功能更强。也就是说,它也比SQL紧凑或SQLite更强大。
根据需求,您也可以考虑SQLCE。我确信,如果你指定了你想使用的数据库,或者你的需求,如果你经常使用的话,你会得到连接字符串等的正确和真实的例子
编辑:下面是SqlCe/SQLCompact的代码 public void ConnectListAndSaveSQLCompactExample()
{
// Create a connection to the file datafile.sdf in the program folder
string dbfile = new System.IO.FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).DirectoryName + "\\datafile.sdf";
SqlCeConnection connection = new SqlCeConnection("datasource=" + dbfile);
// Read all rows from the table test_table into a dataset (note, the adapter automatically opens the connection)
SqlCeDataAdapter adapter = new SqlCeDataAdapter("select * from test_table", connection);
DataSet data = new DataSet();
adapter.Fill(data);
// Add a row to the test_table (assume that table consists of a text column)
data.Tables[0].Rows.Add(new object[] { "New row added by code" });
// Save data back to the databasefile
adapter.Update(data);
// Close
connection.Close();
}
请记住添加对System.Data.SqlServerCe的引用我相信这个问题与Visual Studio中的“本地数据库”项模板有关:
您连接的是哪种类型的数据库?我正在考虑使用本地.sdf文件更新我的答案,以响应您使用.sdf(Sql Ce/Sql Compact)@Lou Franco的特殊要求-感谢语法编辑。对于1):不!对于单用户桌面数据库,您很少使用Express Edition。相反,可以使用进程内引擎,如SQLServerCompactEdition、Sqlite,甚至Access。我的观点是,这是最简单的方法(可能不是最好的方法)。我个人从未在proc DB引擎中使用过。如果这些引擎真的和SQL Server一样易于使用(并且具有相同的支持级别),那么我将予以纠正。它们通常更易于部署(对全新机器的xcopy支持),几乎同样易于开发(您确实需要在开发包上安装sdk,但它们仍然遵循与SQL Server相同的数据提供程序模型),并且拥有更好的用户体验,因为即使应用程序关闭,他们也不需要在后台运行sql server;它确实是一个非常可靠的小数据库,特别是它的轻量级。仅供参考:SQL CE是SQL Compact是SQL Mobile——CE是指稍微过时的版本;最新一代(2008年版)被称为SQL Compact,而SQL CE(Compact Edition)是2005年版。连接和数据适配器都应该位于
使用
块中。