MySqlDataReader查询时丢失表的首条数据,如何解决?

问题描述

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingMySql.Data.MySqlClient;namespaceMySqlDemo{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidConn_Btn_Click(objectsender,EventArgse){MyDatadata=newMyData();reader=data.myReader();while(reader.Read()){ListViewItemitem=newListViewItem();item.Text=reader.GetString(0);listView1.Items.Add(item);}}}publicclassMyData{//Mysql版本6.1MySql.dll版本号5.1MySqlCommandcomm;stringconnstr="server=localhost;userid=root;password=yqh2648;database=birthcontrol";stringselectstr="selectv_namefromvillageinfo";MySqlConnectionconn;MySqlDataReaderreader;publicMySqlDataReadermyReader()\如果将这个函数放入到Form1类调用则不会造成数据丢失,但是我的工程是DLL类库,所以放入主窗体是不可能的!!!{conn=newMySqlConnection(connstr);comm=newMySqlCommand(selectstr);conn.Open();comm.Connection=conn;reader=comm.ExecuteReader();while(reader.Read()){returnreader;}returnnull;}}}

解决方案

解决方案二:
publicMySqlDataReadermyReader()\如果将这个函数放入到Form1类调用则不会造成数据丢失,但是我的工程是DLL类库,所以放入主窗体是不可能的!!!{conn=newMySqlConnection(connstr);comm=newMySqlCommand(selectstr);conn.Open();comm.Connection=conn;reader=comm.ExecuteReader();if(reader.HasRows){returnreader;}returnnull;}

时间: 2024-11-18 06:52:45

MySqlDataReader查询时丢失表的首条数据,如何解决?的相关文章

如何写一个方法用SQL语句查询一张表中有多少条数据,方法改怎么写?

问题描述 如何写一个方法用SQL语句查询一张表中有多少条数据,方法改怎么写? 将查询的的返回值为整型 参考用例 类似 以下方法查询政治类新闻人数 新手不知道该如何改动成自己需要的方法 public Map<String, Long> sumPolEntNews(){ //查询政治类新闻人数总和 String sql = "select count(*) from t_user where newsh ='政治类新闻' "; Map<String, Long> m

【问题解决】Mybatis一对多/多对多查询时只查出了一条数据

问题描述: 如果三表(包括了关系表)级联查询,主表和明细表的主键都是id的话,明细表的多条数据只能查询出来第一条/最后一条数据. 三个表,权限表(Permission),权限组表(PermissionGroup),权限组与权限的关系表(PermissionPermissionGroupKey) 实体类就不写上来了. 原出错映射文件: <resultMap id="permissionGroupResultMap" type="cn.kx59.admin.entity.P

求助:mybatis association 关联查询时,只返回第一条记录

问题描述 求助:mybatis association 关联查询时,只返回第一条记录 1.这个是配置文件 <resultMap type="User" id="userResultMap"> <!-- 属性名和数据库列名映射 --> <id property="id" column="id" /> <result property="userName" column

ibatis-Mysql 在A表新增一条数据时,B表的b字段会根据A表的a字段的值增加或减小

问题描述 Mysql 在A表新增一条数据时,B表的b字段会根据A表的a字段的值增加或减小 用ibatis和mysql,用excel导入表格A时, A表有一个字段a每月还款额,B表有一个字段b总金额._两个表根据peopleid关联_. 在A表插入一行新的数据,对应的B表的 某条数据 的字段b总金额发生更新变化. 请问在Action中或sql语句要如何实现这个功能 解决方案 这个用程序来做不是很简单么? 就是在A表插入成功以后执行更新B表的sql语句不就完了么 解决方案二: 在数据库中A表建一个触

查询结果-查询一张表中的某个字段对应另一张表中多条数据某个字段等于第一张表的那个字段的数据,并按要求显示

问题描述 查询一张表中的某个字段对应另一张表中多条数据某个字段等于第一张表的那个字段的数据,并按要求显示 给的表例如 表一: stuID stuName 1 小明 2 小红 表二: stuID course Score 1 数学 97 1 语文 70 1 英语 88 2 数学 92 要求查询结果为: stuID stuName 语文 数学 英语 1 小明 70 97 88 2 小红 92 解决方案 类似下面这样,下面语句没有调测过. select stuID,(select stuName fr

select-怎么 同时把数据库中 一个表的多条数据的一个自段修改,

问题描述 怎么 同时把数据库中 一个表的多条数据的一个自段修改, 数据库表 ,student , 字段 stu_id, stu_name,Stu_num,Stu_sex, 表 import , 字段, stu_id, import_id, imp_data, imp_name, 在查出两个表关联信息的时候,怎么把imprt表中的imp_data 字段改为系统当前时间 update import set imp_data =sysdata where stu_id in (select stu_i

hql语句只能查询出数据库里面的第一条数据

问题描述 hql语句只能查询出数据库里面的第一条数据 dao层 //查询所有的信息 public List<Stock> getAll() { String hql = ""FROM Stock s LEFT OUTER JOIN FETCH s.people""; return getSession().createQuery(hql).list(); } service层 public List<Stock> getAll() { ret

Contains模糊查询列,列中有一条数据为NULL,就报错

问题描述 Contains模糊查询列,列中有一条数据为NULL,就报错 Contains模糊查询列,列中有一条数据为NULL,就报错 list.Where(x => x.Contact_Phone.Contains(Request["phone"]) 三条数据,2条有phone,一条没有,报错,把另一条添加上就可以用

sql-SQL 表A根据表C的记录新增数据,表C有多少条数据,表A的每条记录就新增多少条不重复的记录

问题描述 SQL 表A根据表C的记录新增数据,表C有多少条数据,表A的每条记录就新增多少条不重复的记录 declare @a table ( id int, [no] varchar(8), name varchar(8) ) declare @c table ( [no] varchar(8) ) insert into @a(id,[no],name)values(1,'A','张三') insert into @a(id,[no],name)values(2,'A','李四') inser