s1补考机试

listview演练

数据表情况

登陆数据库


服务器名称

.

目标数据库

数据表情况

绘制listview控件

新建窗体应用

绘制listview控件

设置lv显示模式为详情模式


设置显示模式

设置lv控件的列

假设只显示三个列

姓名,国家,攻击力

当前界面

配置DbHelper

引入dbHelper工具文件

下载地址

https://cloud.189.cn/t/r636ziI7Fzym(访问码:i093)

把文件粘贴进来

修改dbHelper的命名空间

namespace 控件填入数据的演练


至此为止,DbHelper的命名空间准备就完毕了

DbHelper连接字符串的配置

连接哪个数据库,就获取哪个的连接字符串

连接成功的状态


有小电源

获取连接字符串

选中目标数据库,右下脚找连接字符串

复制它

Data Source=.;Initial Catalog=dbok;Integrated Security=True

把它粘在DbHelper 的对应位置

查询显示所有数据

双击窗体进入加载事件

在这里编写加载方法

为了让方法的通用性更强

写一个带参方法

参数是sql语句

先验证sql语句

带走sql语句


继续写方法

先写一个方法的调用

再写方法的定义

再来定义这个方法

完善加载方法 先明确编写的逻辑

获取帮手

拿一个数据朗读者

导入命名空间

遍历数据郎读者 获取需要的数据

当前的sql语句的查询结果是这个样子的

需要哪一列数据,就提供列名称来获取即可

有一条数据就要创建一个lv的行出来

操作逻辑

效果

代码

效果

代码

效果


代码

只要我们准备的列够多

有几个子项就可以添加几个子项

小结

》步骤一

》步骤二

    // 加载数据到lv中private void loadToLv(String sql) { // 获取帮手DbHelper helper = new DbHelper();// 帮手帮助我们拿一个数据朗读者SqlDataReader reader = helper.getReader(sql);// 数据朗读者一个一个的提供数据while (reader.Read()) { // 提取需要的数据// 通过  朗读者[列名称] 可以获取数据的// 姓名String name = reader["name"].ToString();// 国家String country = reader["country"].ToString();// 攻击力String attack = reader["attack"].ToString();// 每提供一个数据,我们就要给lv添加一行// 新建一个项ListViewItem item = new ListViewItem(name);// 给项添加子项item.SubItems.Add(country);item.SubItems.Add(attack);// 把项添加到lv控件中( lv控件.项集合.Add(项对象) )listView1.Items.Add(item);}}

》最终结果

搜索数据

准备界面

来一个文本框

来一个按钮

搜索的逻辑

获取搜索关键词

构建sql语句

在sqlserver软件中先明确好可用的sql语句

把sql语句贴到代码中

把sql语句改活

利用sql语句重新查询并绑定数据


loadToLv这个方法是我们前一个步骤自己写的方法

这个不是系统方法

测试效果


存在bug的

bug原因分析

我们一直在做加法

解决办法

如果查询到了结果

要往控件中填入的话

先清空一下lv控件

然后再填

解决代码

找到填入数据的方法

在遍历填入数据的操作前

先清空listview的全部数据

再测试一下


正常的搜索是会有数据的

不过

当搜索词是一串空格时,没有结果了

这样不太好

我们应该去空格,再查询

解决bug

期望的效果

完整代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;namespace 控件填入数据的演练
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){// 查询所有数据的sql语句String sql = "select * from sanguo";// 加载数据到lv中loadToLv(sql);}// 加载数据到lv中private void loadToLv(String sql) { // 获取帮手DbHelper helper = new DbHelper();// 帮手帮助我们拿一个数据朗读者SqlDataReader reader = helper.getReader(sql);// 数据朗读者一个一个的提供数据// 先清空再填入listView1.Items.Clear();while (reader.Read()) { // 提取需要的数据// 通过  朗读者[列名称] 可以获取数据的// 姓名String name = reader["name"].ToString();// 国家String country = reader["country"].ToString();// 攻击力String attack = reader["attack"].ToString();// 每提供一个数据,我们就要给lv添加一行// 新建一个项ListViewItem item = new ListViewItem(name);// 给项添加子项item.SubItems.Add(country);item.SubItems.Add(attack);// 把项添加到lv控件中( lv控件.项集合.Add(项对象) )listView1.Items.Add(item);}}private void button1_Click(object sender, EventArgs e){// 拿到搜索关键词,去空格String key = textBox1.Text.Trim();// 利用关键词构建sql搜索语句// select * from sanguo where name like '%张%'String temp = "select * from sanguo where name like '%{0}%'";String sql = String.Format(temp, key);// 利用sql语句绑定数据给控件loadToLv(sql);}}
}

XMind - Trial Version

s1补考机试 笔记 9206相关推荐

  1. 【保研复习】C语言保研机试笔记

    基于王道机试指南的保研机试笔记(C语言翻译版) 文章目录 技巧 C语言哈希表用法 C语言string.h函数 C语言math.h函数 数据结构 链表 基本实现 反转链表 栈 基本实现 括号匹配 表达式 ...

  2. s1机试补考补习 9206

    s1补考机试 listview演练 数据表情况 登陆数据库 服务器名称 . 目标数据库 数据表情况 数据库连接问题 绘制listview控件 新建窗体应用 绘制listview控件 设置lv显示模式为 ...

  3. 计算机考研 机试书籍及相关的资料

    1.算法笔记(2016.07) 2.算法笔记上机训练实战指南(2016.07) 3.计算机考研--机试指南(第2版)-2019.11 <计算机考研-机试指南>- 1经典入门 https:/ ...

  4. 机试指南第七章-动态规划-笔记及背包问题

    第七章     动态规划 一.递归求解: 递归问题的关键是解决初始值和递推公式,从而将复杂问题分解为简单问题直至初始值对应的极简问题,从而得到答案. 套路:初始值+递归公式. Trick:将求出的值存 ...

  5. 【读书笔记】《王道论坛计算机考研机试指南》第五章

    目录 第五章 并查集 最小生成树(MST) 最短路径 拓扑排序 第五章 并查集 本节讨论在图论问题中常常要使用到的一种数据结构一一集合,及其相关操作一一并查集. 我们先来看如下的数字集合: 集合A{1 ...

  6. 考研机试准备--《王道论坛机试指南》学习笔记

    一.代码能力培养的层次结构 1.会编写(默写)经典程序的代码. 2.将自己的想法和抽象的问题转换为代码实现. 3.编写出的代码在大量的,多种多样的测试用例之前仍然具有健壮性. 二.常见概念 1.特殊判 ...

  7. 王道计算机考研机试指南二刷笔记-自用8

    目录 写在开头 第3章 排序与查找 3.1 排序 总结 3.2 查找 总结 写在开头 一刷到后面断更了,发现每题都写太浪费时间了. 一刷总结:数学问题.贪心.递归分治.数据结构二基本都刷完了,图论只刷 ...

  8. 计算机考研机试指南(八)——数学问题

    机试指南 cha4 数学问题 % 1 #include <iostream> 2 #include <stdio.h> 3 #include <stdlib.h> ...

  9. 保研机试——1基础算法(排序、哈希、模拟(日期、图形、查找、进制、字符串)、递归与分治、贪心)

    写在前面的话:笔者在大三上学期(2022.9.20)对刷算法题基本为0基础,通过博客记录自己的学习过程,本人的学习计划为: 1.大三上学期:首先看<王道计算机机试考研指南>,着重看看保研机 ...

最新文章

  1. mysql dba系统学习(18)mysql主从复制的实现 mysql dba系统学习(19)配置mysql+lvs+keeplived实现Mysql读操作的负载均衡
  2. 信息系统项目管理师考前冲刺第二天:项目整体管理
  3. nginx系列之七:限流配置
  4. c++builder tadoquery存储过程_Electron桌面应用程序从创建项目、启动项目到打包程序的详细过程...
  5. 做自媒体的目的是让人记住你
  6. 织梦根目录感染abc.php,织梦SEO优化:织梦dedecms根目录下robots.txt文件设置详解! - 张俊SEO...
  7. Nginx取消泛解析
  8. STM32平台SD卡的FatFS文件系统开发
  9. 【图像分割】基于matlab免疫遗传算法单阈值图像分割【含Matlab源码 729期】
  10. 黑苹果alc269声卡仿冒id_黑苹果定制声卡驱动(ALC892为例)
  11. IDEA导入项目出现红色J问题解决
  12. java ajax是什么东东_Ajax是什么意思,它是在做什么用的?
  13. C语言1加到100的递归方法,递归调用实现1到100的累加
  14. 如何进行产品原型设计
  15. OTP一次性动态密码工具实现
  16. Docker安装指定版本异常:Error: Package: docker-ce-17.03.1.ce-1.el7.centos.x86_64 (docker-ce-stable)
  17. 南非NRCS认证简介
  18. 计算机考研多少是高分,考研多少分算高分 总分500考380难吗
  19. 给vue项目添加favicon.ico图标
  20. 向量代数与空间解析几何

热门文章

  1. python numpy Quickstart tutorial之ndarray创建
  2. mmsegmentation的demo测试-模型加载
  3. 免费开源B2C电商系统:(ShopXO无需授权,即可商用)- 入门篇
  4. canvas游戏篇 - 贪吃蛇
  5. Gdu – Windows 也能用的「命令行式」磁盘使用情况分析工具
  6. wordpress-黑格网址blackgrid导航主题模板
  7. Discuz模板 轻社区Qing_freefresh 完整版
  8. java重命名excel_Java重命名Excel工作表并设置工作表及标签颜色
  9. thinkphp开发卡密社区系统
  10. typecho免申请开发者应用集成第三方登录插件v2.1.2