"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > VBA를 사용하여 Excel에서 MySQL 데이터베이스에 대한 연결을 설정하는 방법은 무엇입니까?

VBA를 사용하여 Excel에서 MySQL 데이터베이스에 대한 연결을 설정하는 방법은 무엇입니까?

2024-11-05에 게시됨
검색:650

How to Establish a Connection to a MySQL Database from Excel using VBA?

VBA를 Excel에서 MySQL 데이터베이스에 어떻게 연결할 수 있나요?

VBA를 사용하여 MySQL 데이터베이스에 연결

연결을 시도하는 중 VBA를 사용하여 Excel의 MySQL 데이터베이스에 연결하는 것은 때때로 어려울 수 있습니다. 귀하의 경우 연결을 설정하는 동안 오류가 발생했습니다.

VBA를 사용하여 MySQL 데이터베이스에 성공적으로 연결하려면 다음 단계를 따르십시오.

Sub ConnectDB()
    Dim oConn As ADODB.Connection

    Set oConn = New ADODB.Connection

    Dim str As String
    str = "DRIVER={MySQL ODBC 5.2.2 Driver};" & _
                                            "SERVER=sql100.xtreemhost.com;" & _
                                            "PORT=3306" & _
                                            "DATABASE=xth_9595110_MyNotes;" & _
                                            "UID=xth_9595110;" & _
                                            "PWD=myPassword;" & _
                                            "Option=3"

    ' Open the connection
    oConn.Open str
End Sub

데이터베이스에서 데이터 가져오기

연결을 설정하고 나면 ADODB.Recordset 개체를 사용하여 데이터베이스에서 데이터를 검색할 수 있습니다. 방법은 다음과 같습니다.

Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset

' Execute a query
sql = "SELECT * FROM ComputingNotesTable"
rs.Open sql, oConn, adOpenDynamic, adLockOptimistic

' Retrieve the data
Do Until rs.EOF
    Range("A1").Select
    ActiveCell = rs.Fields("Headings")
    rs.MoveNext
Loop

' Clean up
rs.Close
oConn.Close
Set oConn = Nothing
Set rs = Nothing

PHP와의 비교

PHP를 사용하여 MySQL에 성공적으로 연결할 수 있었다고 말씀하셨습니다. PHP에서는 mysql_connect 함수를 사용했습니다. 그러나 VBA에서는 ADODB.Connection 개체를 사용하여 연결을 설정합니다.

mysql_connect 함수는 MySQL 확장과 직접 상호 작용하는 기본 PHP 함수입니다. 반면, ADODB.Connection은 MySQL을 포함한 다양한 데이터베이스에 연결하는 보다 일반적인 방법을 제공하는 ActiveX 개체입니다.

추가 참고 사항

  • MySQL ODBC 커넥터가 설치되어 있는지 확인하십시오.
  • 연결 문자열의 Option=3은 문자열이 세미콜론.
  • adOpenDynamic 및 adLockOptimistic 상수는 데이터 검색을 최적화하는 데 사용됩니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3