vs2005连接mysql数据库的问题!

vivek 2008-06-02 06:49:53
我装了MySQL Connector Net 5.1.6
添加数据源的时候测试连接是成功的
但是往下的时候就报错了

"无法检索到此连接的数据库架构.请确保连接设置正确且数据库处于联机状态.
输入的字符串格式不正确.不能在VERSION列中存储<Dynamic>.所需类型是Int64."
这个错误是什么意思?
...全文
873 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhmvb 2008-06-03
  • 打赏
  • 举报
回复
部分代码


class DBClass
{
private static MySQLConnection mySqlConn = null;
private static MySQLCommand mySqlCmd = null;
private static DataTable TBL_sy_group_point = null;
private static DataTable TBL_sy_point = null;
private static DataTable TBL_sy_point_term = null;
private static DataTable TBL_sy_term = null;
/// <summary>
/// 初始化数据库接数对象
/// </summary>
public static void Init_DataBase()
{
string mySqlConnString = "Data Source="+ global::monitor.Properties.Settings.Default.mySqlDBSource +";Password="+ global::monitor.Properties.Settings.Default.mySqlDBPWD +";User ID="+ global::monitor.Properties.Settings.Default.mySqlDBUID +";Location=" + global::monitor.Properties.Settings.Default.mySqlDBLocation;
if (mySqlConn == null)
{
mySqlConn = new MySQLConnection(mySqlConnString);
}
if (mySqlCmd == null)
{
mySqlCmd = new MySQLCommand();
mySqlCmd.Connection = mySqlConn;
mySqlCmd.CommandType = CommandType.Text;
}
if (mySqlConn.State == ConnectionState.Closed)
{
mySqlConn.Open();
mySqlCmd.CommandText = "set names GB2312";
//mySqlCmd.CommandText = "set names UTF8";
mySqlCmd.ExecuteNonQuery();
}
}
/// <summary>
/// 根据指定的SQL,返回此SQL的数据表
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public static DataTable GetDataTable(string sqlstring)
{
Init_DataBase();
mySqlCmd.CommandText = sqlstring;
MySQLDataAdapter mysqladp = new MySQLDataAdapter(mySqlCmd);
DataTable dbtab = new DataTable();
mysqladp.Fill(dbtab);
return dbtab;
}
public static MySQLDataReader GetData(string sqlstring)
{
Init_DataBase();
mySqlCmd.CommandText = sqlstring;
return (MySQLDataReader)mySqlCmd.ExecuteReader();
}
/// <summary>
/// 执行一个SQL,返回此SQL所影响的行数
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static int ExecuteSQL(string sql)
{
Init_DataBase();
mySqlCmd.CommandText = sql;
return mySqlCmd.ExecuteNonQuery();
}
/// <summary>
/// 执行一个SQL,返回此SQL所影响的行数(使用ExecuteScalar返回查询结果集的第一行第一列值)
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static object ExecuteScalarSQL(string sql)
{
Init_DataBase();
mySqlCmd.CommandText = sql;
return mySqlCmd.ExecuteScalar();
}
/// <summary>
/// 执行指定的MySQLCommand
/// </summary>
/// <param name="cmd"></param>
/// <returns></returns>
public static int UpdateMySQLCommand(MySQLCommand cmd)
{
Init_DataBase();
cmd.Connection = mySqlConn;
return cmd.ExecuteNonQuery();
}
}
}
vivek 2008-06-03
  • 打赏
  • 举报
回复
我已经在项目中引用数据库驱动的,比较奇怪的一个错误,我只是建立一个数据源,还没开始写数据呢
shxmh 2008-06-02
  • 打赏
  • 举报
回复
"不能在VERSION列中存储 <Dynamic>.所需类型是Int64"

是在修改数据库数据时报的错吗?

数据类型错误嘛
lakerskobe_wuxin 2008-06-02
  • 打赏
  • 举报
回复
你是不是没在项目中引用mysql驱动? 记得我以前也是一样 用datasource测试是连接上的 但是写进去语句就不行了 主要是看你用的那重连接方法 还有就是部署的正确不
就会吃饭 2008-06-02
  • 打赏
  • 举报
回复
这个我记得有过
我的是语法问题 例如关键字的引号`mysql`,[Microsoft SQL]

检查下代码

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧