由于ADO对象不直接支持MySQL,所以必须先安装MyODBC, 后者也是一个免费产品,在 www.mysql.org上有下载,安装好了MyODBC, 就可以在ODBC
数据源管理中配置一个数据源名称,把它指向你想连接的MySQL
数据库。代码如下:Sub connectMySQL() '通过MyODBC去连接MySQL数据库,并将Microsoft SQL Server 7 '的数据转进mysql中 Dim sConnect As String, sSql As String, i As Long Dim cnMSSQL As New ADODB.Connection Dim cnMySQL As New ADODB.Connection'声明并创建对象 连接 Dim rs As New ADODB.Recordset '声明并创建对象 记录集 Dim cm As New ADODB.Command '声明并创建对象 命令sConnect = "dsn=mysql1" '指定MySQL的数据源名称 cnMySQL.Open sConnect '连接到 mysqlsConnect="Provider=SQLOLEDB.1Persist Security Info=FalseUser ID=sapwd=123456Initial Catalog=softdownData Source=ntserver" '连接到 ms sql server 7 cnMSSQL.Open sConnect'sSql = "create table softinfo (softNum smallint,softname varchar(70),softdesc blob," &_ "softpath varchar(30),softleng varchar(10),softclass varchar(10),softsugest tinyint(1)," &_ "softdown smallint(4))" '创建新的MySQL数据表语句 sSql = "select * from softinfo order by softnum" rs.Open sSql, cnMSSQL, 1, 1 While Not rs.EOF sSql = "insert into softinfo values (" &Trim(rs(0).Value) &",'" &Trim(rs(1).Value) &_"','" &Trim(rs(2).Value) &"','" &Trim(rs(3).Value) &"','" &Trim(rs(4).Value) &_"','" &Trim(rs(5).Value) &"'," &Trim(rs(6).Value) &"," &Trim(rs(7).Value) &")" cm.ActiveConnection = cnMySQL cm.CommandType = adCmdText cm.CommandText = sSql cm.Execute rs.MoveNext Wendrs.Close Set rs = NothingcnMySQL.Close Set cnMySQL = NothingcnMSSQL.Close Set cnMSSQL = Nothing End Sub你这个问题我估计是你用的是老版vb6.0,而数据库版本是新版本2000或以上。
以下是解决你这个问题的有效方法:
.关于老版VB6.0不支持Access2000以上版本的解决办法
.方法1.在Access中的工具-->数据库实用工具-->转换数据库-->到早期的Access(97)数据库版本,然后在vb中调用此Access数据库。
.方法2.下载安装补丁VB6 SP5,然后在VB6.0中选Access2000。
.方法3.不要用Data1控件,改用ADO控件连接数据库(Access2000以上)。
.如果你的数据库是新创建的数据库,没有很多数据,建议你用方法2最好;如果是具有大量数据而又不想安装vb补丁就用方法1,将数据库的格式调成97版就可以啦。
//先设置datagridview的visible设置成false
public static string 连接字符串 = "Data Source=LocalHost实例名Initial Catalog=数据库名Integrated Security=True"
SqlConnection sqlConnection = new SqlConnection(连接字符串)
string cmdText = "SELECT 。。。。。。。"
SqlCommand selectCommand = new SqlCommand(cmdText, sqlConnection)
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(selectCommand)
DataTable dt = new DataTable()
sqlConnection.Open()
sqlDataAdapter.Fill(dataTable)
sqlConnection.Close()
dataGridView1.DataSource=dt
dataGridView1.Visible = true
评论列表(0条)