
C# Windows Forms程序连接 Access 数据库进行数据的增删改查。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
在本文档中,我们将详细阐述如何利用C#编程语言构建一个Windows窗体应用程序,该程序能够与Access数据库建立连接并执行增删改查等操作。此外,我们还将探讨将数据导出至Word文档的方法,这对于生成数据报告和进行记录保存具有重要意义。为了实现这一目标,需要首先在C#环境中创建一个Windows窗体应用程序项目。具体而言,在Visual Studio中,选择“新建项目”,然后在模板列表中选择“Windows Forms应用”。项目创建完成后,需要设计用户界面,包括按钮、文本框、列表视图等控件,以确保用户能够进行便捷的交互。
1. **连接到Access数据库** 为了连接到Access数据库,需要借助`OleDbConnection`类,该类位于.NET Framework中的`System.Data.OleDb`命名空间。在C#代码中,需要提供数据库文件的完整路径以及Jet OLEDB驱动程序的连接字符串。例如: ```csharp string connectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\MyDatabase.mdb;Persist Security Info=False;; OleDbConnection connection = new OleDbConnection(connectionString); ``` 请务必将“MyDatabase.mdb”替换为您的实际数据库文件名。
2. **添加数据(Add)** 数据添加通常涉及打开连接、创建`OleDbCommand`对象、编写SQL INSERT语句以及使用`ExecuteNonQuery()`方法执行命令。例如: ```csharp string sql = INSERT INTO TableName (Column1, Column2) VALUES (@Value1, @Value2); OleDbCommand command = new OleDbCommand(sql, connection); command.Parameters.AddWithValue(@Value1, textBox1.Text); command.Parameters.AddWithValue(@Value2, textBox2.Text); connection.Open(); command.ExecuteNonQuery(); connection.Close(); ``` 在此示例中,“TextBox1”和“TextBox2”是窗体上的输入控件,“TableName”、“Column1”和“Column2”应替换为实际的表名和列名。
3. **删除数据(Delete)** 删除数据的步骤与添加类似,但使用的是DELETE语句,并且可能需要WHERE子句来指定要删除的记录条件。例如: ```csharp string sql = DELETE FROM TableName WHERE ID = @ID; OleDbCommand command = new OleDbCommand(sql, connection); command.Parameters.AddWithValue(@ID, Convert.ToInt32(textBox1.Text)); connection.Open(); command.ExecuteNonQuery(); connection.Close(); ```
4. **更新数据(Update)** 更新数据涉及使用UPDATE语句并结合WHERE子句来指定要更新的记录。例如: ```csharp string sql = UPDATE TableName SET Column1 = @NewValue WHERE ID = @ID; OleDbCommand command = new OleDbCommand(sql, connection); command.Parameters.AddWithValue(@NewValue, textBox1.Text); command.Parameters.AddWithValue(@ID, Convert.ToInt32(textBox2.Text)); connection .Open(); command .ExecuteNonQuery (); connection .Close (); ```
5 . **查询数据(Select)** 查询数据通常通过SELECT语句完成结果可以填充到DataGridView或其他控件中 。例如: ```csharp string sql = SELECT * FROM TableName; OleDbCommand command = new OleDbCommand(sql, connection); OleDbDataAdapter adapter = new OleDbDataAdapter(command); DataTable dataTable = new DataTable(); adapter .Fill (dataTable ); dataGridView1 .DataSource = dataTable; ```
6.**导出至Word文档** 为了将数据导出至Word文档,可以使用`Microsoft Office Interop Word`库。首先创建一个新的Word文档,然后将查询到的数据添加到文档中显示。以下是一个基本的示例: ```csharp Word .Application wordApp=new Word .Application (); Word .Document doc=wordApp .Documents .Add (); foreach (DataRow row in dataTable .Rows) { doc .Paragraphs .Add ().Range .Text=string .Format(ID: {0}, Column1: {1}, Column2: {2}, row[ID], row[Column1], row[Column2]); } doc .SaveAs(Output.docx); doc.Close (); wordApp.Quit (); ``` 其中,“dataTable”是你从数据库查询的结果,“Output.docx”是你要保存的Word文件名。总而言之,此C# Windows窗体程序实例展示了如何与Access数据库进行交互并实现基本的CRUD操作以及具备将数据导出到Word文档的功能。对于开发简单的数据库管理应用程序尤其适用于初学者来说这是一个很好的学习起点;在实际应用场景中应考虑错误处理、用户输入验证以及更复杂的业务逻辑需求 。
全部评论 (0)


