用户
 找回密码
 立即注册

33

主题

96

帖子

1811

积分

金牌会员

Rank: 6Rank: 6

积分
1811
发表于 2019-6-10 23:03:39
各位专家,

小弟在从MySQL数据库中读取数据时,发生如下的问题。如果读取数据的数量过多,APP在运行时弹出下面的信息,同时APP重启。


程序代码示意如下:

MySqlConnection Myconn = new MySqlConnection(svrConnStr);
Myconn.Open();


string sql = "select * from db.table";

Mycmd = new MySqlCommand(sql, Myconn);

MySqlCommand Mycmd.ExecuteNonQuery();
MySqlDataReader Mydr = Mycmd.ExecuteReader();



DataTable QueryData = new DataTable();
QueryData.Columns.Add("Cloumn_A");
QueryData.Columns.Add("Cloumn_B");
QueryData.Columns.Add("Cloumn_C");

QueryData.Rows.Clear();

while(Mydr.Read())
{
     QueryData.Rows.Add(Mydr["column_A"].ToString(), Mydr["column_B"].ToString(), Mydr["column_C"].ToString() );
}


tableViewReport.DataSource = QueryData;
tableViewReport.DataBind();


如果数据量小,那么上述程序不会出问题。

在单步调试的时候,上面的程序无论数据多少都不会出错,不过也没有将数据推送到APP上。

我想了解一下,有什么地方可以设置报错中提到的 "length of the string" 吗?或者这个string的长度最大值是多少? 在哪里能看到Server 日志?

另外在不限制APP的用户指定数据的查询区间情况下,如何能避免这样的问题发生? 上述语句已经放在try {} 中了。

我用的是版本4.7,处于开发模式。

谢谢
大杰米

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使用道具 举报 回复
发表于 2019-6-11 09:51:27
限制大小2MB,可在项目中的DeveloperTrace文件夹中查看server日志。
建议若是使用如Listview,gridview等控件,可进行分页显示
使用道具 举报 回复 支持 反对
发表于 2019-6-11 16:08:00
谢谢Peter,看到了,我改成listview 试一下。
使用道具 举报 回复 支持 反对
发新帖
您需要登录后才可以回帖 登录 | 立即注册