C#操作Access数据库(vs2019)

一、数据库连接与编程实现

1、创建Access数据库

1)打开Office Access新建一个空白数据库DATA.accdb,并改好存放位置。
2)根据自己需要建立一个新表,命名为表1;并在表内添加自己需要的列表数据。
3)保存数据库,也可另存为.mdb格式。

2.数据库与C#建立连接

1)打开Visual Studio,点击菜单栏中的工具选项卡,然后点击连接到数据库条目,跳转到添加连接。
在这里插入图片描述

2)进行数据库中选择并测试链接是否成功。
在这里插入图片描述

3)点击高级,复制该行代码,后面用,依次点击确定退出。
在这里插入图片描述

4)然后就可在服务器资源管理处看到导入的数据库。
在这里插入图片描述

3.编程实现数据库的读取

1)创建一个窗体应用项目,加入一个textbox、三个botton按键,以及和一个dataGridView窗口(具体位置在数据分类型下)。
在这里插入图片描述

2)代码部分

引用:增加以下引用

using System.Data;
using System.Data.OleDb;

具体程序,Form类

public partial class FormDatabase : Form
   {
        // 连接字符串
        private string connStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\10234\Desktop\DATA.accdb";//此处为前面复制出来的代码

        //声明
        private OleDbConnection conn = null;
        private OleDbDataAdapter adapter = null;
        private DataTable dt = null;

        public FormDatabase()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // 连接数据库,需要传递连接字符串
            conn = new OleDbConnection(connStr);
            // 打开数据库连接
            conn.Open();

            // "Select * from 表1"为SQL语句,意思是从数据库中选择叫做“表1”的表,“conn”为连接
            adapter = new OleDbDataAdapter("Select * from 表1", conn);
            // CommandBuilder对应的是数据适配器,需要传递参数
            var cmd = new OleDbCommandBuilder(adapter);

            // 在内存中创建一个DataTable,用来存放、修改数据库表
            dt = new DataTable();
            // 通过适配器把表的数据填充到内存dt
            adapter.Fill(dt);

            // 把数据显示到界面
            dataGridView1.DataSource = dt.DefaultView;
        }

        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                // 按下按钮后,把内存中修改的部分传递给适配器,再通过适配器传递给数据库
                adapter.Update(dt);
                // 清除内存中存放的表数据
                dt.Clear();
                // 重新读取已经改变过的表数据
                adapter.Fill(dt);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {

            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            string sql = textBox1.Text;
            OleDbCommand comm = new OleDbCommand(sql, conn);
            comm.ExecuteNonQuery();
        }

        private void FormDatabase_Load(object sender, EventArgs e)
        {
            textBox1.Text = "insert into 表1(工作时间,工作机位,摄像头编号,IP地址)values(2009/12/31,2,3,4)";
        }
}

二、数据库的操作

输入的String指令为SQL语言,具体语法格式参考SQL语言规范即可

1、在数据库某一表中增加一行数据。

string sql = "insert into 表名(字段1,字段2,…)values(数据1,数据2,…)"; 
//字段指的是数据表的表头名,数据1为对应字段加入的数据,默认为double类型。
OleDbCommand comm = new OleDbCommand(sql, conn);
//cnn为前面读取的数据表名
comm.ExecuteNonQuery();

2、修改某一个数据的值

string sql = " update 表名 set 字段a = 222 where 字段b = 19"; 
//字段a指的是要修改的数据表头名,数据b为要修改数据对应的改行其他数据表头名,通过字段b对应的数据确定字段a所在的位置。
OleDbCommand comm = new OleDbCommand(sql, conn);
//cnn为前面读取的数据表名
comm.ExecuteNonQuery();

3.查找数据表中某一字段中的数据对应的那一行数据

            OleDbDataAdapter oleDapAdapter; //检索与填充数据,一般填充SQL语句  
            DataSet ds = new DataSet();     //填充ds,保存数据 
			string sql = "select * from 表1 where ID = 18";
			// select 列名称 from 表名 where 限定的数据表条件
			//列名称可用*代替全部;
            oleDapAdapter = new OleDbDataAdapter(sql, conn);
            oleDapAdapter.Fill(ds);//将查到的数据放到数据表ds中;
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                for (int j = 0; j < ds.Tables[0].Columns.Count; j++)
                {
                    MessageBox.Show(ds.Tables[0].Rows[i][j].ToString());//需要转成String类型  
                }
            }
            ds.Reset();

4.在数据库中创建新表

string dbstr = "CREATE TABLE 表2(ID INT,文件夹位置 char(255),文件名字 char(255))";
// CREATE TABLE 表名(ID INT,文件夹位置 char(255),文件名字 char(255))
            OleDbCommand oleDbCom = new OleDbCommand(dbstr, conn);
            oleDbCom.ExecuteNonQuery();
要使用C#创建Access数据库,你需要遵循以下步骤: 1. 首先,确保你的计算机安装了Microsoft Access数据库软件。如果没有安装,你需要先下载并安装它。 2. 在C#中,你需要使用 `System.Data.OleDb` 命名空间来与Access数据库进行交互。因此,确保在代码文件的开头添加以下引用: ```csharp using System.Data.OleDb; ``` 3. 接下来,你可以通过使用 `OleDbConnection` 类来创建与Access数据库的连接。在连接字符串中指定数据库的路径和名称。 ```csharp string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\路径\数据库名称.mdb"; OleDbConnection connection = new OleDbConnection(connectionString); ``` 请注意,这里的连接字符串中的 `Provider` 属性用于指定Access数据库版本。根据你所使用的版本,可能需要不同的提供程序。 4. 现在,你可以打开数据库连接,并执行创建数据库操作。 ```csharp connection.Open(); // 创建数据库的SQL查询语句 string createDatabaseQuery = "CREATE DATABASE YourDatabaseName"; OleDbCommand command = new OleDbCommand(createDatabaseQuery, connection); command.ExecuteNonQuery(); connection.Close(); ``` 以上代码段中的 `YourDatabaseName` 是你想要为数据库指定的名称。 请注意,以上代码只是创建数据库的示例。你还可以执行其他SQL查询语句以创建表格、插入数据等操作。 这是一个基本的创建Access数据库的示例。你可以根据你的需求进行适当的调整和扩展。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

椒颜皮皮虾྅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值