C# 连接Mysql数据库问题???未将对象引用到实例!!
publicclassSelfClass{//分站编号stringchStationNumber=string.Empty;//卡号stringsNumber=strin...
public class SelfClass
{
//分站编号
string chStationNumber = string.Empty;
//卡号
string sNumber = string.Empty;
//天线
string sAntenna = string.Empty;
//日期
string sDatatime = string.Empty;
//定义右天线常量
/// <summary>
/// Self_Variable:右天线变量值为1
/// </summary>
private const int rightAntenna = 1;
//定义左天线常量
/// <summary>
/// Self_Variable:左天线变量值为0
/// </summary>
private const int leftAntenna = 0;
/// <summary>
/// Self:接收传递过来的值
/// </summary>
/// <param name="chstation">分站编号</param>
/// <param name="number">人员卡号</param>
/// <param name="antenna">天线</param>
/// <param name="sdatatime">日期</param>
public SelfClass(string chstation, string number, string antenna, string sdatatime)
{
this.chStationNumber = chstation;
this.sNumber = number;
this.sAntenna = antenna;
this.sDatatime = sdatatime;
}
/// <summary>
/// Self:数据库处理线程的方法
/// </summary>
public void thDataStart()
{
//新建连接
objMysqlconnection = new MySqlConnection(conn);
//执行查询语句
query = "SELECT markid from gs_gisdata_now WHERE markid = " + sNumber + "";
objMysqlcommand = new MySqlCommand(query, objMysqlconnection);
try
{
objMysqlconnection.Open();
objMysqlReader = objMysqlcommand.ExecuteReader();
//如果存在
if (objMysqlReader.Read() == true)
{
MessageBox.Show("执行更新操作!");
}
else
{
MessageBox.Show("执行插入操作!");
}
}
catch (MySqlException mse)
{
MessageBox.Show(mse.Message);
}
catch (Exception ecp)
{
MessageBox.Show(ecp.Message);
}
finally
{
objMysqlReader.Close();
objMysqlconnection.Close();
}
}
}
}
报了两个错:
Fatal error encountered during command execution.
未将对象引用设置到对象的实例。
还有为什么objMysqlReader为空,就是它为空才引起的:“Fatal error encountered during command execution.”错误! 展开
{
//分站编号
string chStationNumber = string.Empty;
//卡号
string sNumber = string.Empty;
//天线
string sAntenna = string.Empty;
//日期
string sDatatime = string.Empty;
//定义右天线常量
/// <summary>
/// Self_Variable:右天线变量值为1
/// </summary>
private const int rightAntenna = 1;
//定义左天线常量
/// <summary>
/// Self_Variable:左天线变量值为0
/// </summary>
private const int leftAntenna = 0;
/// <summary>
/// Self:接收传递过来的值
/// </summary>
/// <param name="chstation">分站编号</param>
/// <param name="number">人员卡号</param>
/// <param name="antenna">天线</param>
/// <param name="sdatatime">日期</param>
public SelfClass(string chstation, string number, string antenna, string sdatatime)
{
this.chStationNumber = chstation;
this.sNumber = number;
this.sAntenna = antenna;
this.sDatatime = sdatatime;
}
/// <summary>
/// Self:数据库处理线程的方法
/// </summary>
public void thDataStart()
{
//新建连接
objMysqlconnection = new MySqlConnection(conn);
//执行查询语句
query = "SELECT markid from gs_gisdata_now WHERE markid = " + sNumber + "";
objMysqlcommand = new MySqlCommand(query, objMysqlconnection);
try
{
objMysqlconnection.Open();
objMysqlReader = objMysqlcommand.ExecuteReader();
//如果存在
if (objMysqlReader.Read() == true)
{
MessageBox.Show("执行更新操作!");
}
else
{
MessageBox.Show("执行插入操作!");
}
}
catch (MySqlException mse)
{
MessageBox.Show(mse.Message);
}
catch (Exception ecp)
{
MessageBox.Show(ecp.Message);
}
finally
{
objMysqlReader.Close();
objMysqlconnection.Close();
}
}
}
}
报了两个错:
Fatal error encountered during command execution.
未将对象引用设置到对象的实例。
还有为什么objMysqlReader为空,就是它为空才引起的:“Fatal error encountered during command execution.”错误! 展开
4个回答
展开全部
未将对象引用设置到对象的实例。
一般是因为数据库操作没有查询出数据,但是你在后台代码中有在DataSet或者DataTabl中使用,或赋值给控件...
你最好还是先判断一下是否为空或者测试一下SQL
一般是因为数据库操作没有查询出数据,但是你在后台代码中有在DataSet或者DataTabl中使用,或赋值给控件...
你最好还是先判断一下是否为空或者测试一下SQL
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
objMysqlReader = objMysqlcommand.ExecuteReader();
//如果存在
if (objMysqlReader.Read() == true)
错误在这~~!
你先判断以下是否为空!
//如果存在
if (objMysqlReader.Read() == true)
错误在这~~!
你先判断以下是否为空!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说简单点就是有东西没有被赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有使用你所查询的内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询