当前位置:

首页 > 编程开发 > WinForms连接数据库与数据展示教程

WinForms连接数据库与数据展示教程

WinForms连接数据库展示数据的核心是ADO.NET三步法:配置连接字符串、用SqlDataAdapter填充DataTable、绑定到控件;推荐使用BindingSource提升灵活性,查询单条数据宜用SqlCommand配合参数化防止注入。

WinForms连接数据库展示数据的核心是ADO.NET三步法:配置连接字符串、用SqlDataAdapter填充DataTable、绑定到控件;推荐使用BindingSource提升灵活性,查询单条数据宜用SqlCommand配合参数化防止注入。

WinForms怎么连接数据库 WinForms实现数据展示方法

WinForms 连接数据库并展示数据,核心是用 A DO.NET(如 SqlConnection、SqlDataAdapter、DataTable)获取数据,再绑定到控件(如 DataGridView、ListBox)。不依赖第三方 ORM 也能快速实现,关键是把连接、查询、绑定三步理清楚。

配置数据库连接字符串

连接字符串告诉程序怎么找到数据库。SQL Server 常见写法如下(以本地 SQL Server Express 为例):

Server=.;Database=MyAppDB;Trusted_Connection=True;
或带账号密码:
Server=192.168.1.100;Database=MyAppDB;User Id=sa;Password=123456;

建议放在 app.config 的 节里,方便修改和复用:


  

代码中用 ConfigurationManager.ConnectionStrings["MainConn"].ConnectionString 读取。

用 SqlDataAdapter 填充 DataTable 并绑定 DataGridView

这是最常用、最轻量的数据展示方式,适合增删改查基础操作。

  • 新建一个 SqlConnection,传入连接字符串
  • 创建 SqlDataAdapter,传入 SQL 查询语句和连接对象
  • 用 Fill() 方法把结果装进 DataTable
  • 将 DataTable 直接赋给 DataGridView.DataSource

示例代码(放在窗体的 Load 事件里):

private void Form1_Load(object sender, EventArgs e)
{
    string connStr = ConfigurationManager.ConnectionStrings["MainConn"].ConnectionString;
    string sql = "SELECT Id, Name, Age FROM Users";

    using (SqlConnection conn = new SqlConnection(connStr))
    {
        SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
        DataTable dt = new DataTable();
        adapter.Fill(dt);
        dataGridView1.DataSource = dt;
    }
}

注意:不用手动调用 conn.Open(),SqlDataAdapter.Fill() 会自动处理打开/关闭连接。

用 BindingSource 实现更灵活的数据管理

如果后续要支持排序、筛选、新增行、同步编辑,推荐包一层 BindingSource:

  • 它像一个“数据中介”,解耦 UI 和数据源
  • 支持 AllowNew = true 后,DataGridView 可直接添加新行
  • 调用 EndEdit() 和 ResetBindings() 可刷新状态

绑定方式只需多一步:

bindingSource1.DataSource = dt;
dataGridView1.DataSource = bindingSource1;

之后新增、删除、修改都通过 bindingSource1 操作,最后用 SqlDataAdapter.Update() 回写数据库(需提前设置 InsertCommand 等)。

简单查询+单条数据显示(如用 TextBox、Label)

如果只是查一条记录显示在文本框里,用 SqlCommand.ExecuteScalar() 或 ExecuteReader() 更高效:

string sql = "SELECT Name FROM Users WHERE Id = @id";
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
    cmd.Parameters.AddWithValue("@id", 123);
    conn.Open();
    object result = cmd.ExecuteScalar(); // 返回第一行第一列
    if (result != null) textBox1.Text = result.ToString();
}

注意参数化查询防 SQL 注入,别拼接字符串。

基本上就这些。WinForms 数据展示不复杂但容易忽略连接释放、异常处理和 UI 线程安全(大数据量时别在 UI 线程里长时间查库)。先跑通上面任一方式,再按需加事务、分页或异步加载。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
编程开发
相关文章 更多
termius中文安装教程及语言设置方法
termius中文安装教程及语言设置方法

详解Termius官方客户端的下载安装步骤,演示如何在设置中查找并切换中文界面(如版本支持)。涵盖主机添加、SSH密钥管理及SFTP文件传输的基础操作,帮助用户安全高效地管理远程服务器。

office打开看不到内容怎么设置才能恢复正常显示
office打开看不到内容怎么设置才能恢复正常显示

遇到Office文档打开后一片空白或内容不全?先别急着重装。本文教你通过新建文档排查问题,调整Word/Excel/PPT的视图、缩放、隐藏行列及对象可见性设置,并处理文件权限与损坏问题,快速恢复正常显示。

microsoft浏览器怎么移除主页网址
microsoft浏览器怎么移除主页网址

点击 Microsoft Edge 主页按钮或启动浏览器时总是跳转到不想要的网址?本文详解如何在设置中将主页按钮改为新标签页,以及删除启动时自动打开的特定页面,帮助恢复干净的浏览入口。

blender为什么添加动画后渲染只有看第一帧
blender为什么添加动画后渲染只有看第一帧

解决Blender渲染动画时画面静止在第一帧的问题。检查关键帧是否生效、时间轴Start/End范围、Render Animation与Render Image的区别,以及摄像机和对象渲染可见性设置,快速恢复动画输出。

blender怎么做橡胶模型材质效果制作教程
blender怎么做橡胶模型材质效果制作教程

学习如何在Blender中制作真实的橡胶模型材质。从模型倒角准备到Principled BSDF参数设置,再到使用Noise Texture和Bump节点添加微表面细节,逐步实现柔和、自然的橡胶质感,避免塑料感。

scapple内容导出工具使用方法与导出教程
scapple内容导出工具使用方法与导出教程

学习如何将 Scapple 画布导出为图片、PDF 或文本文件。本文详解导出前的画布整理技巧、不同格式的适用场景及常见问题排查,助你高效交付思维导图成果。

blender 导入模型后看不见的解决教程
blender 导入模型后看不见的解决教程

Blender导入模型后视图中找不到对象?本文详解如何通过Outliner选中聚焦、检查集合隐藏状态、退出本地视图、调整视图裁剪范围以及验证网格法线,快速解决模型不可见问题。

office无法打开wps做的word解决方法教程
office无法打开wps做的word解决方法教程

WPS保存的Word文档在Microsoft Office中无法打开?本文详解如何检查文件格式、正确另存为.docx、使用“打开并修复”功能以及排除权限拦截,帮助你快速恢复文档访问。

coreldraw+x8中文设置方法详细操作教程
coreldraw+x8中文设置方法详细操作教程

CorelDRAW X8安装后界面为英文?本文提供详细的中文设置教程:从打开选项窗口、定位全局常规设置,到选择简体中文并重启验证。同时解答语言切换后文字显示异常等常见误区,助您快速恢复熟悉的中文操作环境。

duplicate cleaner pro怎么用
duplicate cleaner pro怎么用

学习Duplicate Cleaner Pro如何安全查找电脑中的重复照片、视频和文档。涵盖扫描位置选择、Scan Criteria设置、重复组筛选及回收站删除验证,适合整理备份资料与下载目录。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

PDF教程
PDF教程

正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

Mac软件 更多
IntelliJ IDEA macOS版
IntelliJ IDEA macOS版
Mac

IntelliJ IDEA 是 JetBrains 推出的专业集成开发环境,重点服务于 Java、Kotlin 与 JVM 项目开发。软件集成代码补全、静态检查、重构、调试、测试、版本控制及构建工具,并可借助插件扩展语言和框架支持。

PyCharm macOS版
PyCharm macOS版
Mac

JetBrains PyCharm 是面向 Python 开发者的集成开发环境,提供智能补全、代码检查、重构、调试、测试、版本控制及虚拟环境管理功能。Mac 版兼容 Intel 与 Apple 芯片,核心功能可免费使用。

WebStorm macOS版
WebStorm macOS版
Mac

JetBrains WebStorm 是面向 JavaScript、TypeScript 和现代 Web 技术的专业集成开发环境,可智能理解项目结构,提供代码补全、重构、错误检查、运行调试、测试及 Git 工具。

WINDOWS 更多
IntelliJ IDEA Windows版
IntelliJ IDEA Windows版
Windows

JetBrains IntelliJ IDEA 是以 Java、Kotlin 和 JVM 项目为核心的专业集成开发环境,提供智能补全、代码检查、安全重构、调试、测试、版本控制及构建工具集成。统一发行版的核心功能可免费用于商业和非商业项目,

PhpStorm Windows版
PhpStorm Windows版
Windows

PhpStorm 是 JetBrains 面向 PHP 与现代 Web 开发打造的专业集成开发环境,提供代码补全、静态检查、重构、调试、测试、数据库、版本控制及前端语言支持。Windows 用户可直接下载安装程序,

PyCharm Windows版
PyCharm Windows版
Windows

PyCharm 是 JetBrains 推出的 Python 集成开发环境,提供智能代码补全、错误检查、重构、调试、测试、Git、终端及 Jupyter Notebook 支持。统一版安装后可体验 30 天 Pro 功能,