• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#链接mysql新手容易出错的问题

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1.Access denied for user 'root'@'DESKTOP-AN72KEI' (using password: YES)

出现这个问题的原因是因为mysql的自带用户root理论上是不允许对外访问的,只能本地访问,如果需要访问该用户,需要修改一些mysql的配置文件,最好是使用自己新建的用户并且赋予管理员权限。

2.No database selected

出现这个错的原因是数据库没有找到对应的数据,这里需要对结果做一个是否为空的判断。,并且一定要注意的是连接字符串中需要指定数据库,不然也可能会出现这样的错误。

3.语句的参数化

DEMO如下:

 string conn = "server=192.168.60.128;database=mysql_test;User Id=sqlAdmin;password=123";

            using (MySqlConnection mconn = new MySqlConnection(conn))
            {
                mconn.Open();
                //string sql = "SELECT t.sName FROM student t WHERE t.sid =2";
                string sql = "SELECT t.sName FROM student t WHERE t.sid =?id";
                MySqlCommand mcomm = new MySqlCommand(sql, mconn);
                mcomm.Parameters.Add("id", MySqlDbType.Int32);
                mcomm.Parameters["id"].Value = 2;
                var res = mcomm.ExecuteScalar();
                if (res == null)
                {
                    return null;
                }
                else
                {
                    return res;
                }
            }

 

4.需要引入的空间:

using System.Data;
using MySql.Data;
using MySql.Data.MySqlClient;

5.需要的DLL:

6.Unable to connect to any of the specified MySQL hosts.出现这个错误的原因是指定了错误的端口号或者是server的地址写错了,不指定端口号的话是不是默认为3306还请大神指出,本人实验了一下连接到虚拟机的时候没有指定端口号也并没有报错,完整的链接语句:

server=192.168.60.128;port=3306;database=mysql_test;User Id=sqlAdmin;password=123,在配置文件中可以指定属性:

providerName="MySql.Data.MySqlClient" 

7.删除表数据的时候不可以使用表的别名,不然报出类似如下错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'T WHERE T.`sid`=8' at line 1


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#计时函数(毫秒)发布时间:2022-07-18
下一篇:
C#根据类名称创建类示例发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap