引用Microsoft ActiveX Data Objects 2.8 Library

引用Microsoft ADO Data Control 6.0 (OLEDB)控件。

添加两个文本框,三个命令按钮,一个Adodc控件。

Option Explicit

Dim m_conPhone As ADODB.Connection

Dim m_rsPhone As ADODB.Recordset

Private Sub Adodc1_MoveComplete(ByVal adReason As ADODB.EventReasonEnum,ByVal pError As ADODB.Error,adStatus As ADODB.EventStatusEnum,ByVal pRecordset As ADODB.Recordset)

If (Not Adodc1.Recordset.BOF) And (Not Adodc1.Recordset.EOF) Then Adodc1.Caption = Adodc1.Recordset.Bookmark

End Sub

Private Sub Command1_Click()

Adodc1.Recordset.AddNew

End Sub

Private Sub Command2_Click()

Adodc1.Recordset.Delete

Adodc1.Refresh

End Sub

Private Sub Command3_Click()

Set m_rsPhone = New ADODB.Recordset

Text1.Text = "drop database if exists abc"

' m_rsPhone.Open Text1.Text,m_conPhone,adOpenDynamic,adLockBatchOptimistic

m_rsPhone.Open Text1,adLockBatchOptimistic

Set m_rsPhone = Nothing

Unload Me

End Sub

Private Sub Form_Initialize()

If SqlConnect(m_conPhone) Then

' m_conPhone.Execute "create database if not exists abc character set gb2312",adExecuteNoRecords

m_conPhone.Execute "create database if not exists abc",adExecuteNoRecords

m_conPhone.Execute "use abc",adExecuteNoRecords

m_conPhone.Execute "CREATE TABLE IF NOT EXISTS " & "test" & "( name varchar(20) primary key," _

& "time datetime)",adExecuteNoRecords

m_conPhone.Execute "insert ignore into test values ('名字','2014-3-1')",adExecuteNoRecords

Else

Set m_conPhone = Nothing

Set Form1 = Nothing

End If

End Sub

Private Function SqlConnect(Connect As ADODB.Connection) As Boolean

On Error GoTo errconnect

Set Connect = New ADODB.Connection

Connect.ConnectionString = "DRIVER={MySQL ODBC 5.2 Ansi Driver};" _

& "SERVER=localhost;" _

& "UID=root;PWD=; OPTION=3;"

Connect.Open

SqlConnect = True

Exit Function

errconnect:

Dim strErr As String

If Err.Number = -2147467259 Then

strErr = "可能MySQL服务没有开启。"

End If

Debug.Print Err.Number & "," & strErr & Err.Description

SqlConnect = False

End Function

Private Sub Form_Load()

Me.Show

' Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties=" & _

Chr(34) & "DRIVER={MySQL ODBC 5.2 Ansi Driver};SERVER=localhost; OPTION=3;DATABASE=abc" & Chr(34)

Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties=" & _

Chr(34) & "DRIVER={MySQL ODBC 5.2 Ansi Driver};SERVER=localhost; OPTION=3" & Chr(34)

Adodc1.CommandType = adCmdText

Adodc1.RecordSource = "select * from test"

' Set Text1.DataSource = Adodc1

Text1.DataSource = Adodc1

Text1.DataField = "name"

Set Text2.DataSource = Adodc1

Text2.DataField = "time"

Command1.Caption = "增加"

Command2.Caption = "删除"

Command3.Caption = "删除数据库"

End Sub

Private Sub Form_Unload(Cancel As Integer)

m_conPhone.Close

Set m_conPhone = Nothing

End Sub

运行的话,应该会出现下面5个错误,错误语句的修改可以对比它上面的注释语句来修改。

1、编译错误:过程声明与同名事件或过程的描述不匹配

原因:Microsoft ActiveX Data Objects 2.8 Library与Microsoft ADO Data Control 6.0 (OLEDB)控件冲突。

解决办法:取消引用Microsoft ActiveX Data Objects 2.8 Library,改为引用Microsoft ActiveX Data Objects 2.0 Library

2、编译错误:未找到方法或数据成员。

原因:

解决办法:在过程Form_Load里,把“Text1.DataSource = Adodc1”改为“Set Text1.DataSource = Adodc1”。

3、[MySQL][ODBC 5.2(a) Driver][mysqld-5.6.13]No database selected

原因:Adodc1.ConnectionString没有选择数据库

解决办法:在过程Form_Load里,为Adodc1.ConnectionString添加“;DATABASE=abc”。

4、点击删除数据库,提示实时错误 '3001':参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

原因:Text1不等于Text1.Text。

解决办法:在过程Command3_Click里,把“m_rsPhone.Open Text1,...”改成“m_rsPhone.Open Text1.Text,...”。

5、文本框显示乱码。 原因:创建数据库的时候,没有选择字符集。 解决办法:先执行删除数据库。然后修改代码,在过程Form_Initialize里,为m_conPhone.Execute "create database..."添加“ character set gb2312”。

vb连接mysql未发现_vb连接mysql(错误代码)相关推荐

  1. vb连接mysql未发现_vb连接MySQL遇到的问题解决方法

    1.安装mysql,2.安装MyODBC-standard-3.51.07-win.msi3:vb连接语句是:Public strcnn As StringPublic sql As StringPu ...

  2. vb连接mysql数据库必须要装mysql odbc驱动程序_vb连接mysql数据库必须要装mysql odbc驱动程序...

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  3. win7怎么连接不上宽带连接服务器未响应,宽带连接不上,教您怎么解决宽带连接不上...

    为什么会出现宽带连接不上的问题呢?我在这儿说一下我所知道的原因哈,小编觉得这有可能是账号和密码输入错误了.网络设置出现了问题等.那么我们要如何解决?接下面小编就告诉你们怎么解决宽带连接不上的问题. 我 ...

  4. mysql未找到bcrypt_使用mysql和bcryptjs时出现意外的标识符语法错误

    我在我的Express应用程序中使用Mysql 使用此代码: // register router.post("/register", async (req, res) => ...

  5. 苹果在win7无法连接服务器未响应,iPhone连接电脑无反应如何解决_苹果手机连接电脑没有反应解决教程...

    很多用户都喜欢将iPhone苹果手机连接电脑来充电或者管理文件等,但是有时候可能会遇到iPhone连接电脑无反应的情况,该怎么办呢,原因有很多中,这就给大家讲解一下苹果手机连接电脑没有反应解决教程. ...

  6. c3p0连接池使用完毕后连接返还

    c3p0连接池啊就不多说了.有一个问题吧就是连接使用完毕后要怎么放回连接池,供下次继续使用. 答案是: conn.close();// 放回 可以将连接放回.但在实际应用中有时候发现调用这个方法以后连 ...

  7. mysql audit 表_关于MySQL AUDIT(审计)那点事

    2017年06月02日MySQL社区版本最新版为MySQL_5.7.18,但是该版本不带AUDIT功能(MySQL Enterprise Edition自带AUDIT功能), 因此需要加载plugin ...

  8. vb 通过php连接mysql数据库连接_vb如何mysql数据库连接

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  9. mysql重装远程服务未_MySQL远程连接丢失问题解决方法(Lost connection to MySQL server)...

    最近服务器很不稳定,于是重装了mysql 和php 服务,但是接着却遇到了很头疼的麻烦. 远程连接mysql是总是提示: Lost connection to MySQL server at 'rea ...

  10. mysql学习笔记之连接查询与子查询

    mysql连接查询与子查询 1.子查询是指在另一个查询语句中的SELECT子句. 例句: SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t ...

最新文章

  1. ios:CGContextRef 渲染中文问题
  2. 【转】gdb 调试段错误
  3. 微信小程序websocket聊天室
  4. else if mybatis 嵌套_新手如何书写C++代码,远离深度嵌套的if-else
  5. CSS transition 的默认值
  6. ubuntu16.04安装java环境
  7. 神级代码编辑软件(Sublime Text 3) v3.3114 汉化特别版
  8. bzoj千题计划254:bzoj2286: [Sdoi2011]消耗战
  9. RTSP视频流开发经验总结
  10. 2019,谁把握了 “私域流量”,谁就把握了未来十年!私域流量的未来是矩阵化!...
  11. rollup 开发vue组件库及umd SDK 问题总结
  12. 其他笔记 - matlab代码转换为python代码(SMOP、numpy)
  13. 进度条Progress的用法介绍
  14. vue 音乐进度条拖拽
  15. 期望、方差、标准差、协方差、正太分布、分布
  16. kindle的xray怎么用_xray 使用说明高级版领取方式
  17. p7root用什么软件,华为p7刷机软件
  18. 搬家了:http://shallwe2000.cc
  19. 18产品经理需要具备的文案能力
  20. CPU与GPU的基本知识

热门文章

  1. 1.2 矩阵与线性方程组-向量空间、内积空间与线性映射
  2. 复变函数:傅里叶级数
  3. 【Java】15分钟快速体验阿里Java诊断工具Arthas
  4. MongoDB CookBook读书笔记之备份与恢复
  5. linux在shell中获取时间 date巧用
  6. 微服务设计笔记——几种远程过程调用方法
  7. .NET常用类库--苏飞合集
  8. android4.0 禁止横竖屏切换使用 android:configChanges=orientation|keyboardHidden无效
  9. syn flag flooding防御
  10. Spring.NET学习笔记8——集合类型的注入(基础篇) Level 200