C#链接mysql 新手容易出错的问题
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 = ;
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
C#链接mysql 新手容易出错的问题的更多相关文章
- 通过msyql proxy链接mysql中文乱码及session问题
1.session问题 问题前提:一台机数据库为两个实例,通过不同的socket监听不同端口对外提供服务.不同的站点都访问同一个VIP不同的端口进行访问数据库. 故障现象:一旦有一个站点先用了这个vi ...
- SQLServer 远程链接MySql数据库详解
SQLServer 远程链接MySql数据库详解 by:授客 QQ:1033553122 测试环境: Microsoft Windows XP Professional 版本2000 Service ...
- MYSQL数据库导入出错:#1046 - No database selected
今天遇到的mysql导入Navivat for MySql,总是出错,搞了一会才记起没有创建同名的数据库,然后还是导不进去,原来是要在建立的同名的数据单击右键---->运行Sql文件--> ...
- sql server 链接到本地实例出错
我在使用VS2010测试package的时候,突然发现sql server 链接到本地实例出错,出错信息如下: “ A network-related or instance-specific err ...
- PDO链接mysql学习笔记
<?php //PDO链接mysql//dsn三种写法: //dsn01 $dsn = 'mysql:host=localhost;dbname=mysql'; //$dsn = 'mysql: ...
- Mssql链接mysql数据库
最近在做mysql数据库实时同步到mssql数据库的方案,花了一周时间,测试通过了,在实际机器上测试出现了若干问题.第一个问题就是在mssql上链接mysql的问题. 第一步,安装 Mysql ODB ...
- 如何用DOS 链接mysql
1.Ctrl+R 打开DOS窗口 2.键入 cd\ 回车进入C盘根目录 3.进入mysql bin目录下 操作mysql命令 4.输入连接数据库命令 mysql -hlocalhost -uroot ...
- Mysql创建函数出错
目前在项目中,执行创建mysql的函数出错, mysql 创建函数出错信息如下: Error Code: 1227. Access denied; you need (at least one of) ...
- SQL Server链接MySQL实践
最近在访问多数据库的时候进行了SQLServer链接MySQL数据的实践,现总结如下: 一. 安装mysql-connector-odbc驱动: 1. 在SQL Server服务器的机器上安装mys ...
随机推荐
- 26.OpenIdConnect获取用户信息的两种方式
openId在OAuth基础之上,在下面这红框内拿到Authorization Code之后还可以返回IdToken. IdToken和AccessToken一起返回.IdToken就会包括了用户的信 ...
- JavaScript代码放在HTML代码不同位置的差别
通常情况下,JavaScript 代码是和 HTML 代码一起使用的,可以将 JavaScript 代码放置在 HTML 文档的任何地方.但放置的地方,会对 JavaScript 代码的正常执行会有一 ...
- SelectObject()函数详解
SelectObject 把一个对象(位图.画笔.画刷等)选入指定的设备描述表.新的对象代替同一类型的老对象. HGDIOBJ SelectObject( HDC hdc, // ...
- PHP正则表达式,看这一篇就够啦!
前言 不知道你们有没有这个感觉,看正则表达式就像看天文数字一样,什么电话号码.邮箱的正则表达式,上网复制一下粘贴下来就搞定了.完全不知道这写的是什么玩意.后来我自己也想学一下,因为感觉用处还是挺大的. ...
- Unity手游引擎安全解析及实践
近日,由Unity主办的"Unity技术开放日"在广州成功举办,网易移动安全技术专家卓辉作为特邀嘉宾同现场400名游戏开发者分享了网易在手游安全所积累的经验.当下,很多手游背后都存 ...
- 管理docker容器
如果在容器中启动sshd,存在开销和攻击面增大的问题.同时也违反了Docker所倡导的一个容器一个进程的原则. docker attach 37d61466c69e \\注意:如果在stdin中exi ...
- nginx 第二课
基本配置格式 Nginx全局配置参数 使用include文件 HTTP的server部分 虚拟服务器部分 location —— where,when,how. mail的server部分. 完整的示 ...
- nacos1.0.0 服务管理使用mysql
在自己的MySQL中添加nacos_config数据库,在nacos\conf 下找到nacos-mysql.sql.拷贝里面的sql语句创建表和数据 INSERT INTO users (usern ...
- 1.检索数据 ---SQL
相关提示: 结束SQL语句 多条SQL语句必须以分号(:)分隔.多数DBMS不需要在单条SQL语句后加分号,但也有DBMS可能必须在单条SQL语句后加上分号.当然,如果愿意可以总是加上分号.事实上,即 ...
- Avito Cool Challenge 2018-B. Farewell Party(思维)
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...