C#读写Access数据库、表格datagridview窗体显示代码实例
C# 读写 Access 数据库、表 datagridview 窗体显示代码实例 最近项目中用到 C# 对于 Access 数据库表读写 .mdb 操作,学习了下相关的东西,这里先整理 C# 对于 Access 数据库的操作,对于 MySQL 和 Oracle 数据库的操作放到后面再写。 Access 是微软数据库编
C#读写Access数据库、表格datagridview窗体显示代码实例
最近项目中用到C#对于Access数据库表读写.mdb操作,学习了下相关的东西,这里先整理C#对于Access数据库的操作,对于MySQL和Oracle数据库的操作放到后面再写。
Access是微软数据库编辑软件,其生成的数据库文件为.mdb或.accdb,因此在Visual Studio里不像操纵MySQL那样需要使用mysql数据库驱动,系统库里有关于操纵数据库的几个类。说下其中几个主要用到的类:
System.Data;
System.Data.OleDb;
System.Data.Odbc;
System.Data.SqlClient;
先简单说下C#对于Access数据库的几个基本操作原理:
C#操作Access连接字符串
String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=mydata.mdb";
C#操作Access建立连接
OleDbConnection connection = new OleDbConnection(connectionString);
C#操作Access使用OleDbCommand类执行Sql语句
OleDbCommand cmd = new OleDbCommand(sql, connection);
connection.Open();
cmd.ExecuteNonQuery();
[1]连接Access数据库
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Application.StartupPath + "\\mydata.mdb");
[2]连接SQL Server2000数据库
SqlConnection conn = new SqlConnection("server=.; uid=admin; pwd=123456; database=mydata");
[3]受信任的SQL Server2000数据库
SqlConnection conn = new SqlConnection("workstation id=localhost; Integrated Security=SSPI; database=mydata");
[4]ASP中链接SQL Server/Access数据库:(网页)
(SQL Server):
conn.connectionstring = "driver={sql server}; server=(local); uid=admin; pwd=123456; database=mydata"
(Access):
conn.connectionstring = "Driver={Microsoft Access Driver(*.mdb)}; DBQ=" & Server.Mappath("mydata.mdb")
!!!注意:→在asp中,语句结束不需要" ; "
--------------------------------------------------------------------------------------------------------------------------------------------
一、创建.mdb数据库
//创建.mdb,注意参数path是.mdb的完整路径(不包含表的名称) //C#的ADO.NET不能通过编程方式创建新的ACCESS(MDB)数据库,所以只能用COM的链接库的ADOX操作 public static bool CreateMdbDatabase(string path) { try { ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + path + ";"); cat = null; return true; } catch { return false; } }
二、C#写入记录到Access数据库
Sql插入数据库操作,一次只能插入一条记录,多条记录插入只能通过"循环"实现,效率不高;
或者要么更快地就是开启事务(保证数据一致性)→循环插入→最后数据再一起导入。
【实例】在Form上创建一个textbox和一个button,点击button把textbox中的数据写入到access数据库中。
1.首先创建一个空Access数据库datainput.mdb并写入相应字段:
2.读写数据库时应当将数据库关闭,再运行程序进行写操作
using System.Data.Oledb; private void button1_Click(object sender, EventArgs e) { foreach (IACell cell in m_DistributedCells) { //把cell.FrequencyBand、cell.UlFrequency、cell.DlFrequency全部写入数据库表.mdb里去 //string sql_0 = "insert into table (column1,column2) values('" + textbox.Text + "','" + textbox.Text +"')"; //构造sql语句 string sql = ""; if (cell.ChannelIndex == 1) { sql = "insert into datawrite(ChannelIndex, BandWidth, StartChIndex, EndChIndex, ExcludedChannels, UlFrequency, DlFrequency, ACIR) values('" + 1 + "','" + 20 + "','" + 0 + "','" + 1 + "','" + 1 + "','" + 2402 + "','" + 2422 + "','" + 0 + "')"; } else if (cell.ChannelIndex == 6) { sql = "insert into datawrite(ChannelIndex, BandWidth, StartChIndex, EndChIndex, ExcludedChannels, UlFrequency, DlFrequency, ACIR) values('" + 6 + "','" + 20 + "','" + 5 + "','" + 6 + "','" + 6 + "','" + 2427 + "','" + 2447 + "','" + 0 + "')"; } else if (cell.ChannelIndex == 11) { sql = "insert into datawrite(ChannelIndex, BandWidth, StartChIndex, EndChIndex, ExcludedChannels, UlFrequency, DlFrequency, ACIR) values('" + 11 + "','" + 20 + "','" + 10 + "','" + 11 + "','" + 11 + "','" + 2452 + "','" + 2472 + "','" + 0 + "')"; } //access数据库路径,注意一定是双斜杠\\,否则会被当成转义字符! string dbpath = "D:\\data\\datainput.mdb"; //定义数据库连接对象 OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + dbpath); OleDbCommand cmd = new OleDbCommand(sql, con); //定义Command对象 con.Open(); //打开数据库连接 cmd.ExecuteNonQuery(); //执行Command命令 con.Close(); //关闭数据库连接 } }
三、读出数据库的值——C#界面显示表格datagridview
【实例】将现有Access数据库表格内的数据以datagridview的形式显示在C#窗体中。
1.现有的数据库,50条记录。
2.代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.OleDb; //主要是这个东西,其实已经包含在System.Data类里了,这里特别提出来注明下 namespace text01 { public partial class Form1 : Form { public Form1() { InitializeComponent(); OleDbConnection thisConnection = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\dataread.mdb"); string sql = "select * from dataread"; OleDbDataAdapter thisAdapter = new OleDbDataAdapter(sql, thisConnection); System.Data.DataSet thisDataSet = new System.Data.DataSet(); thisAdapter.Fill(thisDataSet, "table"); DataTable dt = thisDataSet.Tables["table"]; this.dataGridView1.DataSource = dt; thisConnection.Close(); } } }
效果图:

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如何在 Apache 中配置 Zend?在 Apache Web 服务器中配置 Zend Framework 的步骤如下:安装 Zend Framework 并解压到 Web 服务器目录中。创建 .htaccess 文件。创建 Zend 应用程序目录并添加 index.php 文件。配置 Zend 应用程序(application.ini)。重新启动 Apache Web 服务器。

Apache服务器是强大的Web服务器软件,充当浏览器与网站服务器间的桥梁。1. 它处理HTTP请求,根据请求返回网页内容;2. 模块化设计允许扩展功能,例如支持SSL加密和动态网页;3. 配置文件(如虚拟主机配置)需谨慎设置,避免安全漏洞,并需优化性能参数,例如线程数和超时时间,才能构建高性能、安全的Web应用。

Oracle不仅是数据库公司,还是云计算和ERP系统的领导者。1.Oracle提供从数据库到云服务和ERP系统的全面解决方案。2.OracleCloud挑战AWS和Azure,提供IaaS、PaaS和SaaS服务。3.Oracle的ERP系统如E-BusinessSuite和FusionApplications帮助企业优化运营。

本文将阐述如何通过分析Debian系统下的Apache日志来提升网站性能。一、日志分析基础Apache日志记录了所有HTTP请求的详细信息,包括IP地址、时间戳、请求URL、HTTP方法和响应代码等。在Debian系统中,这些日志通常位于/var/log/apache2/access.log和/var/log/apache2/error.log目录下。理解日志结构是有效分析的第一步。二、日志分析工具您可以使用多种工具分析Apache日志:命令行工具:grep、awk、sed等命令行工具可

Nginx性能监控与故障排查主要通过以下步骤进行:1.使用nginx-V查看版本信息,并启用stub_status模块监控活跃连接数、请求数和缓存命中率;2.利用top命令监控系统资源占用,iostat和vmstat分别监控磁盘I/O和内存使用情况;3.使用tcpdump抓包分析网络流量,排查网络连接问题;4.合理配置worker进程数,避免并发处理能力不足或进程上下文切换开销过大;5.正确配置Nginx缓存,避免缓存大小设置不当;6.通过分析Nginx日志,例如使用awk和grep命令或ELK

MySQL适合Web应用和内容管理系统,因其开源、高性能和易用性而受欢迎。1)与PostgreSQL相比,MySQL在简单查询和高并发读操作上表现更好。2)相较Oracle,MySQL因开源和低成本更受中小企业青睐。3)对比MicrosoftSQLServer,MySQL更适合跨平台应用。4)与MongoDB不同,MySQL更适用于结构化数据和事务处理。

vProcesserazrabotkiveb被固定,мнелостольностьстьс粹馏标д都LeavallySumballanceFriablanceFaumDoptoMatification,Čtookazalovnetakprosto,kakaožidal.posenesko

MySQL通过表结构和SQL查询高效管理结构化数据,并通过外键实现表间关系。1.创建表时定义数据格式和类型。2.使用外键建立表间关系。3.通过索引和查询优化提高性能。4.定期备份和监控数据库确保数据安全和性能优化。
