c winform mysql类_C#连接MySQL数据库操作类

首先需要安装MySQL Connector Net 6.8.3

然后在项目中引用MySQL Connector,如下图所示

24cc61937ce554c69a4bb5e4c81782b5.png

C#连接MySQL的操作类代码如下:public class MySQLHelper

{

private string db_host = "localhost"; //数据库服务器

private string db_port = "3306"; //数据库端口号

private string db_user = "root"; //数据库用户

private string db_pass = "123456"; //数据库密码

private string db_name = "myblog"; //数据库名

private MySqlConnection dbconn;

public MySQLHelper()

{

//do nothing

}

~MySQLHelper()

{

this.CloseDBconn();

}

//连接数据库

public void OpenDBconn()

{

this.dbconn = new MySqlConnection();

this.dbconn.ConnectionString = "server=" + this.db_host + ";uid=" + this.db_user + ";pwd=" + this.db_pass + ";database=" + this.db_name + ";";

if (this.db_port.Length > 0)

{

this.dbconn.ConnectionString += ";port=" + this.db_port;

}

try

{

this.dbconn.Open();

}

catch (MySqlException ex)

{

string message = "无法连接数据库: "+ ex.Message;

string caption = "系统提示";

MessageBoxButtons buttons = MessageBoxButtons.OK;

DialogResult result = MessageBox.Show(message, caption, buttons);

Environment.Exit(0);

}

}

//关闭数据库

public void CloseDBconn()

{

if (this.dbconn != null)

{

this.dbconn.Close();

}

}

//查询数据

public MySqlDataReader query(string sqltext)

{

MySqlCommand cmd = new MySqlCommand();

cmd.Connection = this.dbconn;

cmd.CommandType = CommandType.Text;

cmd.CommandText = sqltext;

MySqlDataReader reader = cmd.ExecuteReader();

return reader;

}

//更新数据

public int execute(string sqltext)

{

MySqlCommand cmd = new MySqlCommand();

cmd.Connection = this.dbconn;

cmd.CommandType = CommandType.Text;

cmd.CommandText = sqltext;

int result = cmd.ExecuteNonQuery();

return result;

}

}

使用方法(查询数据):this.dbhelper = new MySQLHelper();

this.dbhelper.OpenDBconn();

string sqltext = "s.e.l.e.c.t * from blog w.h.e.r.e id=123 order by id asc limit 0,1";

MySqlDataReader reader = this.dbhelper.query(sqltext);

if (reader.HasRows == false)

{

this.logtext = "\r\n" + DateTime.Now.ToString() + ", 内容处理完成。";

textBox1.AppendText(this.logtext);

textBox1.ScrollToCaret();

return;

}

else

{

while (reader.Read() == true)

{

this.curr_id = Convert.ToInt32(reader["id"]);

this.curr_title = reader["title"].ToString();

this.curr_fileext = reader["fileext"].ToString();

this.curr_filesize = Convert.ToDouble(reader["filesize"]) * 1024;

}

//do something more

}

reader.Close();

this.dbhelper.CloseDBconn();

使用方法(更新数据):this.dbhelper.OpenDBconn();

string sqlchan = "u.p.d.a.t.e blog set isfixed=1 w.h.e.r.e id=123";

this.dbhelper.execute(sqlchan);

this.dbhelper.CloseDBconn();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/525704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

病历智能处理引擎的架构设计、实现和应用

作者简介:吴大帅,新屿算法工程师,曾供职于宅米网、新达达,从事系统架构设计、算法设计等工作。 李智慧,《大型网站技术架构:核心原理与案例分析》作者,从事大型网站、分布式系统、大数据方面的研…

Heron:来自Twitter的新一代流处理引擎应用篇

作者 | 吴惠君,吕能,符茂松责编 | 郭芮【导语】 本文对比了Heron和常见的流处理项目,包括Storm、Flink、Spark Streaming和Kafka Streams,归纳了系统选型的要点。此外实践了Heron的一个案例,以及讨论了Heron在这一年开…

2017 JavaScript 调查报告概述

本文转载自极光日报知乎专栏,地址:https://zhuanlan.zhihu.com/p/32260460简评:最近一份超过 23,000 名开发者参与的关于 JavaScript 的调查报告 - the State of JavaScript 2017 出炉了。内容包含框架的流行趋势、薪资水平等等,感…

python动态_python --动态类型

动态类型(dynamic typing)是Python另一个重要的核心概念。我们之前说过,Python的变量(variable)不需要声明,而在赋值时,变量可以重新赋值为任意值。这些都与动态类型的概念相关。动态类型在我们接触的对象中,有一类特殊的对象&…

微博热点事件背后数据库运维的“功守道”

作者 | 张冬洪责编 | 仲培艺【导语】 微博拥有超过3.76亿月活用户,是当前社会热点事件传播的主要平台。而热点事件往往具有不可预测性和突发性,较短时间内可能带来流量的翻倍增长,甚至更大。如何快速应对突发流量的冲击,确保线上服…

sql devalop连接mysql_SQL-Mysql表结构操作

一 前言本篇内容是关于 基本的数据库操作,建表,表结构修改等内容;学习本篇的基础是知识追寻者以前发布的文章:公众号:知识追寻者知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;)二…

云计算平台2017年盘点——真正成为新技术新应用的基础架构

作者简介:吴凯,北京云途腾科技有限责任公司首席运营官,具有20年的IT和软件服务行业管理经验,历任多家著名外资及民营IT企业的核心高级管理职位,是中国云计算专家委员会专家委员,中国开源云联盟及云计算开源…

Spark SQL在100TB上的自适应执行实践

作者:汪愈舟 俞育才 郭晨钊 程浩(英特尔),李元健(百度)责编:钱曙光(qianshgcsdn.net)Spark SQL是Apache Spark最广泛使用的一个组件,它提供了非常友好的…

分包组包 北斗通信_蓝牙mesh底层传输层(分包和组包)

当传输大于15字节的上层传输层PDU时,底层传输层就需要对上层传输层PDU进行分包并重新组包为了减少底层传输层包的数量,这里使用块应答机制。问题:怎么通过块应答机制减少底层传输层包的数量?上层传输层需要分成两个底层传输层PDU的…

别人在忙挖矿,京东架构师却悄悄用区块链搞了件大事

作者介绍: 赵铭,京东商城区块链研发工程师, 主要从事区块链底层研究设计工作,主攻方向为分布式账本结构; 孙海波,目前担任京东Y事业部供应链研发负责人,负责的业务包括订单履约、库存优化、采购…

用sklearn mysql_Sklearn之Linear Regression

import matplotlib.pyplot as pltimport numpy as npfrom sklearn import datasets, linear_modelfrom sklearn.metrics import mean_squared_error, r2_score# 加载糖尿病数据集diabetes datasets.load_diabetes()# 只使用一个特征diabetes_X diabetes.data[:, np.newaxis, …

2017年30个惊艳的Python开源项目

【摘要】本文来自Mybridge,介绍了过去一年里30个惊艳的Python开源项目。点击阅读原文每一个都可以在GitHub上看到更为详细的内容。以下是译文。在过去的一年里,Mybridge AI 比较了近15000个开源Python项目,选择了前30名(概率只有0…

mycloud php5 mysql_mycloud 刷debian乐趣之-owncloud 私有云+芒果云的安装

既然刷了debian了,那么就可以安装很多软件了。这篇文章,我打算讲讲大众化的最初始的配置方案。具体后续优化,例如memcached,https等,可以参考官方文档。第一步、安装apache,#当然,你如果喜欢nginx,也可以的…

关于区块链,程序员需要了解什么

作者 | 曹严明如果说比特币是对传统货币的一种颠覆,那么比特币的基础技术——区块链则是对传统编程范式的一种颠覆。区块链技术被看作是一次Paradigm Shift。也许很多人对 “颠覆”这种说法不以为然,因为现在这个词已经被用滥了(如今哪个好一…

java两个矩阵相乘_java计算两个n阶矩阵相乘

自己是个新手,研究java数据结构,看到两个n阶矩阵相乘的题目,自己就试着写了一个简单的demo,哪里有不好的地方,也希望大家多提提意见,直接上代码了:package com.shujujiegou01;public class JuZh…

混合云异军突起 英特尔的全“芯”体验为企业保驾护航

近几年,混合云在IT界异军突起,各大厂商纷纷布局混合云市场,企业更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源,在这种情况下混合云被越来越多的采用,它将公有云和私有云进行混合和匹…

搭建java_搭建JAVA环境

1 jdk的获取jdk的获取路径有很多这种,我把我网盘上存的分享个大家,大家直接下载就可以了。http://pan.baidu.com/s/1pLsJLtp(这是一个公开链接,直接打开下载就可以了)。2 jdk的安装(1)单击刚刚下载的安装文件将会弹出欢迎对话框。(2)点击“下…

java数组下标越界_BUG-并行流与数组下标越界-思考与总结

BUG-并行流与数组下标越界-思考与总结今天线上环境报异常,发现了一个之前没注意过的问题,记录一下。1. 异常信息异常信息如下:Caused by: java.lang.ArrayIndexOutOfBoundsExceptionat java.lang.String.getChars(String.java:826)at java.la…

IDC敲黑板啦:未来企业IT以混合云为主

数字化是企业转型的必由之路数字化技术正在融入企业的血液里。IDC 认为,基于第三平台的 46 技术是企业在数字化转型过程中的关键要素:• 4 是指以云计算、大数据、社交商业与移动技术为代表的第三平台技术。• 6 则是基于第三平台智商的 6 大创新加速器。…

Service Mesh 在华为公有云的实践

我们在构建微服务而构建微服务是困难的微服务是一个很大的概念,从团队组织到最佳实践似乎都有实施微服务的一些指导。我们这里只提构建微服务的架构模式,也就是关乎到你用什么样的方式来构建你以微服务架构来组织的应用系统。近些年随着微服务的火热&…