Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

mysql und Visualbasic

Frage Entwicklung

Mitglied: ComputerhelferFerdi

ComputerhelferFerdi (Level 1) - Jetzt verbinden

26.02.2008, aktualisiert 27.02.2008, 4110 Aufrufe, 5 Kommentare

Hallo
Wie kann wärend ich eine MYSQL Datenbank mit Visual Basic öffne die unterschiedlichen DSN abfragen.
Mein Problem ich definiere verschiedene DSN, wenn ich nun mein Prog starte mus ich immer schon die DSN eingeben, ich möchte aber gern ein Auswahlfenster haben.

"Mein Programm jedenfalls der Anfang"

Public Sub MakeBackupNow(ODBCBaseName As String, ByVal sBackupFile As String)
On Error Resume Next

Dim oConn As ADODB.Connection
Dim BaseMakeBackup As Recordset
Dim BaseMakeBackupCreate As Recordset
Dim DataBaseTables As Recordset

Dim prevIndex As String
Dim F As Integer
Dim m As Integer
Dim d As Integer
Dim ArraCountFeld(99)
Dim ArraCountWert(99)
Dim ZeilenString As String
Dim CheckPrimZeile As String
Dim CheckKeyZeile As String
Dim ZeilenStringCreate As String
Dim TabellenName As String
Dim DatenString As String
Dim dateinr As Integer
dateinr = FreeFile
' Backup-Datei öffnen
Open sBackupFile For Output As dateinr

' Verbindung zur MySQL-Datenbank herstellen
Set oConn = New Connection
Set BaseMakeBackup = New ADODB.Recordset
Set BaseMakeBackupCreate = New ADODB.Recordset
Set DataBaseTables = New ADODB.Recordset
oConn.Open "Provider=MSDASQL;DSN=fgrancis"

Hier am Ende hätte ich gern eine Abfrage.

Ferdi Neuhaus
Mitglied: SvenGuenter
26.02.2008 um 13:57 Uhr
Nur das ich dich richtig verstehe du willst gerne die DSN von Hand eingeben mit der du dich dann verbinden willst sehe ich das richtig?

Dann wäre es folgendermaßen

golbale public variable in der mainform als beispiel
01.
Public gv_dsnstring as string


Form mit Textfeld erzeugen
Dann folgendes
01.
form_main.gv_dsnstring = "Provider=MSDASQL;DSN=" & me.textfeld.text
Wieder in der Form_Main
01.
o.Conn.open gv_dsnstring


Nur zur Vollständigkeit. Du musst natürlich die Form mit dem Textfeld im Vorfeld laden also folgendermaßen


01.
Public Sub MakeBackupNow(ODBCBaseName As String, ByVal sBackupFile As String) 
02.
On Error Resume Next 
03.
 
04.
Dim oConn As ADODB.Connection 
05.
Dim BaseMakeBackup As Recordset 
06.
Dim BaseMakeBackupCreate As Recordset 
07.
Dim DataBaseTables As Recordset 
08.
 
09.
Dim prevIndex As String 
10.
Dim F As Integer 
11.
Dim m As Integer 
12.
Dim d As Integer 
13.
Dim ArraCountFeld(99) 
14.
Dim ArraCountWert(99) 
15.
Dim ZeilenString As String 
16.
Dim CheckPrimZeile As String 
17.
Dim CheckKeyZeile As String 
18.
Dim ZeilenStringCreate As String 
19.
Dim TabellenName As String 
20.
Dim DatenString As String 
21.
Dim dateinr As Integer 
22.
dateinr = FreeFile 
23.
' Backup-Datei öffnen 
24.
Open sBackupFile For Output As dateinr 
25.
 
26.
form_dsnholen.show 
27.
 
28.
' Verbindung zur MySQL-Datenbank herstellen 
29.
Set oConn = New Connection 
30.
Set BaseMakeBackup = New ADODB.Recordset 
31.
Set BaseMakeBackupCreate = New ADODB.Recordset 
32.
Set DataBaseTables = New ADODB.Recordset 
33.
oConn.Open gv_dsnstring 
34.
 
Gruß

Sven
Bitte warten ..
Mitglied: ComputerhelferFerdi
27.02.2008 um 06:44 Uhr
Hallo
Nicht ganz
Ich hätte gern ein Auswahlfenster in dem mir die unterschiedlichen System-DSN gezeigt werden, die angelegt sind. Besser wäre natürlich eine Möglichkeit die verschiedenen Datenbanken einzusehen, ähnlich wie wenn ich eine System-DSN anlege die Verbindunmgsdaten eingeben und dann kann man ja die Datenbank auswählen, ich meinen im ODBC-Datenquellen-Administrator unter SystemDSN.
Ferdi
Bitte warten ..
Mitglied: SvenGuenter
27.02.2008 um 08:47 Uhr
Hi dann musst du dir die regestry auslesen in der HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\
stehen alle DSN die du angelegt hast in jedem Ordner findust du den Schlüssel dbq der den Pfad zur Datenbanl enthält.


Gruß

Sven Guenter
Bitte warten ..
Mitglied: ComputerhelferFerdi
27.02.2008 um 08:55 Uhr
Hallo Sven
Das funktioniert prima danke,
aber gibts auch eine Möglichkeit mir die verschiedenen Datenbanken auf dem Server anzeigen zulassen?

Ich weis es geht wenn ich die DSN anlege bekomme ich unten in dem Feld die Möglichkeit eine Datenbank auszuwählen.

Ferdi
Bitte warten ..
Mitglied: SvenGuenter
27.02.2008 um 13:18 Uhr
Du willst aus deinem Programm raus den DB Server ansprechen und dann die DB's die dort installiert sind angezeigt bekommen verstehe ich das richtig?

wenn es das sein sollte dann mach einfach folgendes SQL auf die DB

01.
select distinct table_schema  from information_schema.tables
Das liest dir alle DB's aus.


Gruß

Sven
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
PHP
PHP MySQL Login (7)

Frage von Yanmai zum Thema PHP ...

Webbrowser
gelöst Daten in entfernte Mysql DB schreiben (3)

Frage von nullacht15 zum Thema Webbrowser ...

Datenbanken
MySQL: Zwei Spalten in einer View zählen (11)

Frage von Memo66 zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

Exchange Server
DNS Einstellung - zwei feste IPs für Mailserver (15)

Frage von ivan0s zum Thema Exchange Server ...