本地数据库,我需要一些例子
我正在制作一个将在多台计算机上安装并运行的应用程序,我的目标是创建一个随应用程序一起安装的空本地数据库文件,当用户使用该应用程序时,他的数据库将填充应用程序中的数据。 你能给我提供以下例子:
- 我需要做什么才能使我的应用程序可以连接到其本地数据库
-
如何使用应用程序中的变量执行查询,例如,如何向数据库添加以下内容
String abc = "ABC"; String BBB = "Something longer than abc";
编辑:: 我正在使用从“添加>新项目>本地数据库”创建的“本地数据库”,那么我将如何连接到该? 抱歉这个愚蠢的问题..我从未在.net中使用过数据库
根据需要,您也可以考虑使用Sql CE。 我敢肯定,如果您指定了您正在考虑使用的数据库,或者如果您使用了您的要求,那么您将获得正确且真实的连接字符串示例等。
编辑:这是SqlCe / Sql Compact的代码
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的引用
我没有看到有人建议SQL Compact; 它与SQLite类似,因为它不需要安装和定制到低端数据库。 它源于SQL Mobile,因此占用空间小,function集有限,但如果您熟悉Microsoft的SQL产品,它应该有一些熟悉程度。
SQL Express是另一种选择,但要注意它需要独立安装,并且比applciation的本地缓存需要的更强一些。 这说它也比SQL Compact或SQLite强大得多。
好像你是:
- – 制作将在多台计算机上安装和运行的C#应用程序
- – 需要一个本地数据库(我假设一个RDBMS)
- – 您需要在安装时生成空白数据库
- – 然后,您需要能够连接到数据库并在应用程序运行时填充它。
通常,您似乎需要阅读使用小型数据库引擎的应用程序。 我首先检查SQLite ,特别是如果你需要多操作系统function(例如,你的C#程序将在微软的.NET Framework和Novell的Mono上运行)。 有用于访问SQLite数据库的C#包装器。
我相信这个问题是关于Visual Studio中的“本地数据库”项目模板:
你在考虑作为一个数据库? 从您在问题中提供的内容来看,我建议使用SQLite。
您可以从他们的站点Sqlite.NET获取示例代码
我不确定我完全理解你的要求,但Sqlite是轻量级,本地部署的数据库持久性的一个很好的选择。 看看这里:
这里是一个ADO.NET提供商..
1)
提供此function的最简单方法是通过SQL Server Express用户实例 。 SQL Server Express是免费的,因此您的用户无需为SQL Server支付额外的许可证,并且用户实例是基于文件的,这符合您的要求。
对于2)
这是一个很大的话题。 您可能需要阅读Microsoft的一些教程,以了解如何连接到DB等。