winform - 读取数据库

  1 using System;
  2 using System.Collections.Generic;
  3 using System.ComponentModel;
  4 using System.Drawing;
  5 using System.Linq;
  6 using System.Text;
  7 using System.Threading.Tasks;
  8 using System.Windows.Forms;
  9
 10 using System.Data;                                  // 引用【AD0.NET】命名空间
 11 using System.Data.SqlClient;                 // sql
 12
 13 namespace DataBase
 14 {
 15     public partial class Form1 : Form
 16     {
 17         public Form1()
 18         {
 19             InitializeComponent();
 20         }
 21
 22         // 窗体载入
 23         private void Form1_Load(object sender, EventArgs e)
 24         {
 25             //编号, 品名, 规格, 材质, 库存, 价格, 仓库
 26             this.lstviewRecordData.Items.Clear();
 27             this.lstviewRecordData.View = View.Details;        // lstviewRecordData视图样式: 详细信息
 28             this.lstviewRecordData.GridLines = true;              // 网格线
 29             this.lstviewRecordData.CheckBoxes = true;         // 复选框
 30             ColumnHeader ch = new ColumnHeader();
 31             ch.Text = "编号";                                                         // 标题
 32             ch.TextAlign = HorizontalAlignment.Center;          // 居中
 33             ch.Width = 50;                                                            // 宽度
 34             this.lstviewRecordData.Columns.Add(ch);            // 添加列头
 35             this.lstviewRecordData.Columns.Add("品名", 80, HorizontalAlignment.Center);
 36             this.lstviewRecordData.Columns.Add("规格",180, HorizontalAlignment.Center);
 37             this.lstviewRecordData.Columns.Add("材质", 80, HorizontalAlignment.Center);
 38             this.lstviewRecordData.Columns.Add("库存", 100, HorizontalAlignment.Center);
 39             this.lstviewRecordData.Columns.Add("价格", 100, HorizontalAlignment.Center);
 40             this.lstviewRecordData.Columns.Add("仓库", 100, HorizontalAlignment.Center);
 41             this.lstviewRecordData.FullRowSelect = true;
 42
 43         }
 44         private void btnReadDataBase_Click(object sender, EventArgs e)
 45         {
 46             lstviewRecordData.Items.Clear();
 47             // 绑定数据库
 48             BindDataBase();
 49         }
 50
 51         /// <summary>   绑定数据库
 52         ///
 53         /// </summary>
 54         private void BindDataBase()
 55         {
 56             // 连接指定数据库
 57             SqlConnection conn = new SqlConnection();
 58
 59             /***********************************************************************
 60              *  使用字符串声明连接所需要的信息:
 61              *      1. 服务器;
 62              *      2. 数据库 ;
 63              *      3. 验证:
 64              *              3.1 Windows本地验证: Integrated Security = true;
 65              *              3.2 SqlServer验证: user id = 登录名; password = 密码
 66             ***********************************************************************/
 67             conn.ConnectionString = "Server = 127.0.0.1; DataBase = DuanLaoYeDataBase;"+
 68                                     " user id = DuanLaoYe; password = 123456";
 69             try
 70             {
 71                 // 打开连接
 72                 conn.Open();
 73                 //MessageBox.Show(conn.State.ToString());       // 测试conn的状态,打开或关闭
 74
 75
 76                 // 构造数据库命令操作对象,用于执行T-SQL语句
 77                 SqlCommand cmd = new SqlCommand();
 78                 // 执行操作的T-SQL语句或者存储过程
 79                 cmd.CommandText = "select * from Steel";
 80                 // 执行操作所需要的连接
 81                 cmd.Connection = conn;
 82
 83
 84                 //声明结果集对象 , 用于检索数据 ; 结果集的来自cmd的ExecuteReader()方法
 85                 SqlDataReader dr = cmd.ExecuteReader();
 86                 // 遍历dr数据 , 判断有无数据可读
 87                 if (dr.HasRows)
 88                 {
 89                     // 开始更新数据, 挂起lstviewRecordData的UI绘制
 90                     this.lstviewRecordData.BeginUpdate();
 91                     while (dr.Read())           // 循环读取所有数据
 92                     {
 93                         ListViewItem lvi = new ListViewItem();
 94                         lvi.Text = dr[0].ToString();
 95                         for (int i = 1; i <= 6; ++i )
 96                         {
 97                             lvi.SubItems.Add(dr[i].ToString().Trim());
 98                         }
 99                         this.lstviewRecordData.Items.Add(lvi);
100                     }
101                     // 结束更新数据, 开始绘制UI(UI一次性绘制)
102                     this.lstviewRecordData.EndUpdate();
103                 }
104                 else
105                 {
106                     MessageBox.Show("结果集无数据!");
107                 }
108             }
109             catch (SqlException ex)
110             {
111                 MessageBox.Show("数据库操作遇到异常 : " + ex.Message);
112             }
113             finally
114             {
115                 // 判断当前的conn连接状态, 如果未关闭
116                 if (conn.State != ConnectionState.Closed)
117                 {
118                     // 则关闭连接
119                     conn.Close();
120                 }
121             }
122         }
123
124         private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
125         {
126             if (DialogResult.Yes == MessageBox.Show("确定删除当前所有选中数据?", "提示", MessageBoxButtons.YesNo))
127             {
128                 this.lstviewRecordData.BeginUpdate();
129                 // 遍历选中项
130                foreach (ListViewItem lvi in lstviewRecordData.SelectedItems)
131                {
132                    // 按索引删除选中项
133                    //this.lstviewRecordData.Items.RemoveAt(lvi.Index);
134
135                    // 按项删除选中项
136                    this.lstviewRecordData.Items.Remove(lvi);
137                }
138                this.lstviewRecordData.EndUpdate();
139             }
140         }
141     }
142 }

时间: 2024-11-05 06:08:11

winform - 读取数据库的相关文章

读取数据库信息构建视图字段的备注信息,方便程序代码生成

在很多情况下,我们开发都需要有一个快速的代码生成工具用来提高开发效率,代码生成工具很多信息都是读取数据库的表.视图等元数据进行对象表信息的完善,有了这些信息,我们就可以在普通的实体类代码里面添加属性字段的中文注释,或者在Winform或者Web界面的快速生成的时候,可以在查询框或者界面编辑的时候,充当标签提示等处理信息.但是,一般情况下视图的备注信息是没有的,但是视图和表之间是存在一定的关系的,虽然不同数据库系统对于它们的信息对应不一定一致,但是我们可以把它们的对应关系寻找出来就可以给视图字段增

读取数据库数据,并将数据整合成3D饼图在jsp中显示

首先我将生成饼图的方法独立写成一个PieChar.java类,详细代码如下:(数据库需要自己建,如有需要的话) 1 import java.io.IOException; 2 import java.sql.SQLException; 3 import org.jfree.chart.ChartFactory; 4 import org.jfree.chart.JFreeChart; 5 import org.jfree.data.general.DefaultPieDataset; 6 7 p

cas-简单的验证cas服务器登录和读取数据库账号密码登录

环境win8+tomcat7+jdk7+cas-server-4.0.0-release 1. 首先到 http://downloads.jasig.org/ 地址下载 cas-server-4.0.0-release.zip,解压后到modules目录中找到cas-server-webapp-4.0.0.war,复制到tomcat的webapp目录下,修改名称为cas.war 2. (1)创建证书 keytool -genkey -alias mycas -keyalg RSA -keysiz

运用.NIT将数据存入数据库、读取数据库(运用封装)陈老师作业

我基础不好,根据所学的知识,书本的例题修改的,也不知道我理解的是否符合老师要求 运用C#将数据存入数据库.并且可以读取数据库里的数据,此项目我运用了封装.我运用了一个窗体将数据存读数据. 我首先创建了一个数据库,库名“数学题库” ,然后创建了一个表“tiku1”, 添加一个类Class1 class Class1    {        public string strCon = @"Data Source=.;Initial Catalog=数学题库;Integrated security=

python 读取数据库,老是报错。

在8.04.4环境下(其实我觉得跟环境无关,是我语句有问题): $ dpkg -l | grep -i python ii  libapache2-mod-python                 3.3.1-2build1               Apache 2 module that embeds Python within th ii  moinmoin-common                       1.5.8-5.1ubuntu2.5          Python

PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [2] 首页 APP 接口开发方案 ① 读取数据库方式

方案一:读取数据库方式 从数据库读取信息→封装→生成接口数据 应用场景: 数据时效性比较高的系统 方案二:读取缓存方式 从数据库获取信息(第一次设置缓存或缓存失效时)→封装(第一次设置缓存或缓存失效时)→返回数据 ↓                                              ↑ 缓存(缓存生效时)     →   →    →    → 方案三:定时读取缓存方式(crontab 定时任务) 封装并返回数据 ↑ 数据库→crontab→缓存 ↑ http 请求 ==

二进制数据将图片保存到数据库,并读取数据库二进制数据显示图片

一. 浏览图片 OpenFileDialog ofd = new OpenFileDialog();            ofd.InitialDirectory = @"E:\";            ofd.Filter = "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files(*.*)|*.*";            ofd.RestoreDirectory = true; if (ofd

关于在ASP.NET MVC 中使用EF的Code First的方式来读取数据库时的Validation failed for one or more entities. See &#39;EntityValidationErrors&#39; property for more details.

今天在做一个小网站的时候遇到很多问题唉,我还是个菜鸟,懂的也不多,今天一个表单的提交按钮用不了,都弄了几个小时唉.不过最后还是搞定了,还有浏览器有开发人员选项,不然我都不知道我还要继续排查多久哦,今天晚上在把数据存入数据库的又出现了问题.我使用的是Entity Framework的Code First模式来访问数据库的.对于数据的验证我在数据模型上加了数据注解.当然在前台也引入了一些JS这样就可以再不把数据提交到服务器时完成验证功能.在后台保存用户提交的数据的时候,我们要用到ModelStatu

python读取数据库数据,读取出的中文乱码问题

最近遇到python读取数据库数据,读取出的中文乱码问题, 网络搜索的基本是: "1. Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)2. MySQL数据库charset=utf-83. Python连接MySQL是加上参数 charset=utf84. 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8)" 这些,一一尝试后仍未解决.去数据库查看了下,发现这个出现中文乱码的字段类型是varcha