sql >> データベース >  >> RDS >> Mysql

ユーザー名とパスワードを記憶していないms-accessでのmysqlサーバーへのDSNレス接続

    このマイクロソフトの記事 の助けを借りて答えを見つけました 。 RefreshLinkメソッドを使用するのではなく、dbAttachedODBCオプションを使用してリンクを削除して再作成します。

    Public Sub relink_mysql_tables(mysql_connection As String)
    
    Dim db As Database
    Dim tblDef As TableDef
    Dim sLocalTableName As String
    Dim sRemoteTableName As String    
    
    ' new collection '
    Dim newTableDefs As New Collection
    
    ' current database '
    Set db = CurrentDb()
    
    ' create new table defs '
    For Each tblDef In db.TableDefs
        If (tblDef.Attributes And TableDefAttributeEnum.dbAttachedODBC) Then
            sLocalTableName = tblDef.Name
            sRemoteTableName = tblDef.SourceTableName
    
            ' create new linked table def '
            Set tblDef = db.CreateTableDef(sLocalTableName, dbAttachSavePWD, sRemoteTableName, mysql_connection)
            newTableDefs.Add tblDef         
    
        End If
    Next
    
    ' delete old table defs '
    For Each tblDef In newTableDefs
        db.TableDefs.Delete tblDef.Name
    Next
    
    ' add new table defs to current database '
    For Each tblDef In newTableDefs
        db.TableDefs.Append tblDef
    Next
    

    接続文字列は以前と同じですが、プレフィックス「ODBC;」が追加されています:

    ODBC;DRIVER={MySQL ODBC 5.1 Driver};Server=myserver;Database=mydatabase;Uid=myusername;Pwd=mypassword;Option=3
    



    1. varcharsql開発者から先行ゼロを削除する

    2. mysql_insert_idスレッドは安全ですか?

    3. PDO-MySQL:プリペアドステートメントのバインド時にブール値が1または空の文字列に変換されます

    4. PHPを使用してMySQLに「€」記号を保存するにはどうすればよいですか?