Ventuz中读取mysql时的总结
由于项目需要连接数据库,就自己做测试。我下载的是mysql-8.0.15-winx64版本的,安装包找找就有了,里面应该都有具体的安装教程。安装时反正遇见了很多坑,各种小问题,还好都一一解决了。现在项目中数据大部分都是读取数据库,这样便于管理维护,然后Ventuz又是一款实时的交互性展示软件,数据的及时性就显得比较重要,所以懂数据库还是很重要的。
下面进入正题:
直接上代码:
//命名空间
using System;
using Ventuz.Kernel;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data;
using System.Collections.Generic;//就一个OnMethod1方法public bool OnMethod1(int arg){//链接字符串MySqlConnection myconn = new MySqlConnection("Host =localhost;port=3306;Database=gyx;Username=root;Password=Iam021266.+");//打开链接myconn.Open();DataSet ds = new DataSet();//建立DataTable对象(相当于建立前台的虚拟数据库中的数据表)DataTable dt;string str = string.Format("select {0} from {1}", type,table);// 执行当前操作 ======*****======MySqlCommand cmd = new MySqlCommand(str, myconn); cmd.ExecuteNonQuery(); MySqlDataAdapter adp = new MySqlDataAdapter(str, myconn);adp.Fill(ds); dt = ds.Tables[0]; //这里面是一个刷新循环,随机赋值,模拟数据库更新效果for (int i = 0; i < dt.Rows.Count; i++){string st = string.Format("update {0} set {1}=(FLOOR(RAND() * 100)) where id={2}", table, type, i); // 执行当前操作 ======*****======MySqlCommand cm = new MySqlCommand(st, myconn); cm.ExecuteNonQuery(); }// 注意: ds.Tables[0].Rows.Count == dt.Rows.Count; //我是利用集合去接收查询到的数据,最开始想利用数组,但是在给数组赋值时,老是出现:缺少get//访问器的问题,解决不了才用的集合。//为了方便我用的string类型的,别的类型需要自己去转换 List<string> lis = new List<string>(); //一行一行的循环获取 ,DataRow表示Table中的一行数据 for(int i = 0; i < dt.Rows.Count; i++) { lis.Add(dt.Rows[i][0].ToString());} //转为数组A = lis.ToArray(); //关闭链接 //adp.Close();myconn.Close();changed = true;return false; }
这个是简化版的,下面附上我自己做出来的效果图,可以切换需要查询的数据库,表,列
最后将这些数据附加进柱状图或者别的图形中,再添加一个mover定时刷新就能看到实时改变的图形了。
PS:但是发现一个问题,我同时开cmd 进行查询我的数据库信息,发现我利用cmd查询到的表信息总是比在Ventuz中得到的表信息早一步,不知道是什么原理,希望懂得大神告知我一下,万分感谢!
Ventuz中读取mysql时的总结相关推荐
- linux线程出错,在线程应用程序(linux,pthreads)中读取文件大小时出错
我试图从Linux中的文件夹中读取所有文件和目录,其线程为 获取最大文件大小&当前目录和当前目录树下的名称.在线程应用程序(linux,pthreads)中读取文件大小时出错 主线程扫描基本目 ...
- 在python中读取文件时如何去除行末的换行符以及在Windows与Linux中的区别
[时间]2018.11.14 [题目]在python中读取文件时如何去除行末的换行符以及在Windows与Linux中的区别 一.去除换行符 以使用readline进行读取为例: import red ...
- C语言读取图像像素坐标,OpenCL中读取image时的坐标
本文测试OpenCL中读取image数据时关于坐标的两个问题: 使用float2坐标读取 使用int2坐标读取 首先完整的测试代码如下,测试平台为SDM855: #include #include # ...
- python从文件中读取数据时出现错误_Python 从文件中读取数据
读取整个文件 # 案例:读取整个文件 # pi_digits.txt 3.1415926535 8979323846 2643383279 # file_reader.py with open ('p ...
- python从文件中读取数据时出现错误_python-从文件中读取数据
一.读取整个文件 learnFile.py 绝对路径 #coding=UTF-8 importsys reload(sys) with open(r'C:\Users\zhujiachun\Deskt ...
- jdbc读取mysql时分秒yyyy-mm-dd hh:_[转]JDBC中日期时间的处理技巧
Java中用类java.util.Date对日期/时间做了封装,此类提供了对年.月.日.时.分.秒.毫秒以及时区的控制方法,同时也提供一些工具方法,比如日期/时间的比较,前后判断等. java.uti ...
- php中提示注意怎么解决,PHP中操作MySQL时一定要注意
恍惚恍惚又来到了文章的学习,想必大家又有很多问题吧! 对于 MySQL ,第一件你必须牢记的是它的每一行命令都是用分号 (;) 作为结束的,但--没有完全绝对的事,在这儿也是一样,当一行 MySQL ...
- qt有关tcpserver中读取数据时是否使用flush时的研究
tcpserver的读取槽函数如下: recBuffer.append(tcpSocket->readAll());///>缓存接收的数据 tcpSocket->flush(); 我 ...
- 使用sqoop将数据从hdfs中导入mysql时,卡在INFO mapreduce.Job: map 100% reduce 0%的解决办法
最近在将hdfs中已经处理好的数据导入到mysql的时候遇到这么一个现象,当任务执行到 INFO mapreduce.Job: map 100% reduce 0% mapreduce任务卡在map1 ...
最新文章
- oj contest ranklist时间怎么算的_几次买入基金怎么算持有天数,加仓算在原来持有时间吗...
- Python中if条件判断语句的用法!
- java session持久化_Session的生命周期和持久化
- $lookup做关联表查询
- 内存泄漏–测量频率和严重性
- tools URL 收集
- python中查找字符串_python中字符串操作--截取,查找,替换
- java内存不足错误_调试Java内存不足错误
- golang设置title并获取窗口句柄
- android 逆地址,Android高德获取逆地址编码(经纬度坐标-地址描述如省市区街道)
- Python自动化之socket初识
- 2016年零售业CIO的七大革命性挑战
- 阿里的Atlas组件化框架
- 【JY】精彩仿真书籍推荐与投票~
- 【Redis使用规范】
- 汉字编码原则及0XA1与0X80代表的含义。(汉字编码原则为转发)
- 基于java报刊图书征订管理系统
- 再见2022,你好2023
- 开发者建议使用谷歌浏览器?
- mysql - database/数据库