
1、mysql官网下载 net连接器
2、引用下载后的mysqldatadll
3、程序开始加:using MySqlDataMySqlClient;
4、连接数据库:
private void button1_Click(object sender, EventArgs e)//登入按钮{
string power = comboBox1TextTrim();
string user = textBox1TextTrim();
string psd = textBox2TextTrim();
string ipaddress = "";
string mysqluser = "";
string mysqlpsd = "";
if (user == "")
{
MessageBoxShow("请输入用户名");
}
else if (psd == "")
{
MessageBoxShow("请输入密码");
}
else
{
try
{
try
{
string[] getconfig = FileReadAllLines("E:/project/configuretxt", EncodingGetEncoding("gb2312"));
ipaddress = getconfig[0]Split(':')[1];//读取ip地址
mysqluser = getconfig[1]Split(':')[1];//读取数据库账号
mysqlpsd = getconfig[2]Split(':')[1]; //读取数据库密码
}
catch (Exception)
{
MessageBoxShow("配置文件丢失");
return;
}
string query = "SET names gb2312;SELECT COUNT(id) FROM fx_user WHERE name='" + user + "' AND password=MD5('" + psd + "') AND userid='" + power + "'";
MySqlConnection cn = new MySqlConnection("server=" + ipaddress + ";user id=" + mysqluser + ";Password=" + mysqlpsd + ";database=system;charset=gb2312");
cnOpen();
MySqlCommand cm = new MySqlCommand(query, cn);
MySqlDataReader read = cmExecuteReader(); //搜索满足 用户名,密码, *** 作员的记录。
//如果记录没有-->密码或用户名错误
if (readRead()) //如果记录多余1条-->数据错误,联系管理员
{ //只有一条记录则成功登入
int x = Int32Parse(read[0]ToString());
if (x == 0)
{
MessageBoxShow("用户名或密码错误");
}
else if (x > 1)
{
MessageBoxShow("用户冲突,请联系管理员");
}
else if (x == 1)
{
// MessageBoxShow("登入成功");
main mf = new main(power, ipaddress, mysqluser, mysqlpsd); //将 *** 作员 和 IP地址传入 主窗体
mfShow();
thisHide();
cnClose();
}
}
}
catch (MySqlDataMySqlClientMySqlException ex)
{
switch (exNumber)
{
case 0:
MessageBoxShow("数据库连接失败1");
break;
case 1045:
MessageBoxShow("数据库密码或用户名错误");
break;
default:
MessageBoxShow("数据库连接失败2");
break;
}
}
}
}
问题可能出在这里:
你的v2没有初始化就使用了,导致这句 v2add(hang);会出现空指针异常;
而你在后边对v2又进行了初始化:v2 = new Vector();但此时的v2是空的,里面没有数据。
解决方法:
将 v2 = new Vector(); 这句放到链接数据库前,也就是在使用前进行初始化。
数据库连接池的连接被用光了,自然就不能连接了
可以加大最大连接数,还就没了连接用完了要及时关闭,以免占着坑不拉屎,
想那些sql语句复杂的最好简化以减少查询的时间,寻找别的解决方法
以上就是关于c#怎么连接数据库 用MySQL 详解全部的内容,包括:c#怎么连接数据库 用MySQL 详解、Java连接数据库问题(附代码)、tomcat 数据库连接池 查询过于频繁时导致 数据库连接失败!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)