c#怎么连接数据库 用MySQL 详解

c#怎么连接数据库 用MySQL 详解,第1张

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 数据库连接池 查询过于频繁时导致 数据库连接失败!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9645489.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存