Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 24

Thema: [Fehler] Vb6 MYSQL Connection

  1. #1

    [Fehler] Vb6 MYSQL Connection

    hi!

    Ich habe ein problem mit der Verbindung von meinem PC zu einer Datenbank.
    Ich habe alle treiber usw installiert und auch in meiner ENtwicklungsumgebung angestellt.

    Joa, dann habe ich mir den Beispielcode, der bei dem Tutorial das ich verwende dabei war, genommen und angepasst. Daten stimmen alle usw. Die Verbindung per Treiber hab ich auch eingestellt, ich hab aber nichts mit MSAccses gemacht, aber da stand das man das nicht brauch, stimmt das?

    Nunja, jedenfalls sagt es bei dem beispielcode das ein Objekt oder eine Objektvariable fehlt.


    Hier mein COde, hoffe drauf das mir jemand weiterhelfen kann!

    Code:
    Private Sub Form_Load()
    ' Connection-String festlegen
    Dim sConn As String
    Dim sServer As String
    Dim sUserName As String
    Dim sPassword As String
    Dim sDBName As String
    ' Server Hostname (oder IP)
    sServer = "mysql.lima-city.de"
    ' Benutzerdaten
    sUserName = "USER26252"
    sPassword = "*******"
    ' Datenbank-Name
    sDBName = "DB1116949315"
    sConn = "Provider=MSDASQL;Driver=MySQL;" & _
            "Server=" & sServer & ";Database=" & sDBName
    ' Connection öffnen
    oConn.Open sConn, sUserName, sPassword
    End Sub
    (Geh richtig das FormLoad soll, ich willd as bei dem Start der Exe die Verbindung aufgebaut wird, also sollte das timmen, oder? )

    Geändert von raian (23.10.2005 um 18:24 Uhr)

  2. #2

    Users Awaiting Email Confirmation

    Hast du den MySQL ODBC Treiber installiert?
    Welche Fehlermeldung erhälst du genau?
    Tip: Ändere in deinem Post im Code das PW und danach auch nochmals auf dem DB Server selbst.
    Ist nicht so optimal, das hier so einfach preiszugeben...

  3. #3
    Hmm, ups^^ hab das falsche kopiert, das was ich eigentlich kopieren wolte da war das net mit drinne..^^"

    Ähm, ja, ich hab den OBCD Treiber installiert, und auch eingestellt oder wie man das nennt

    Die fehlermeldung:


    Laufzeitfehler 424:

    Objekt erforderlich!

  4. #4

    Users Awaiting Email Confirmation

    Und an welcher Stelle bringt er das?
    Beim oConn.Open ?
    Eigentlich sieht der Code richtig aus.. werd ihn gleich mal probieren und dann hier editieren.

    EDIT:
    Ha.. ganz einfach eigentlich.
    Du musst erst mal natürlich "oConn" als Objekt für eine (ADO)DB-Connection deklarieren.
    Sonst weiß der Compiler damit nichts anzufangen.. (und die Funktion "open" kann dann natürlich auch net verwendet werden)

    Dim oConn As New ADODB.Connection

    BTW.:
    Für die Abfragen musst du auch eigene Objekte deklarieren, die dann die Results zurückbekommen, die du bei einer Abfrage über oConn.execute erhälst (z.B. oConn.execute("Select * from Irgendwastable where Name='BeyondTheTruth'")
    Da brauchst du ein "Recordset-Objekt"
    (deklarieren z.B. mit

    Dim oRS As New ADODB.Recordset
    )

    In Verwendung könnte das dann so aussehen:
    oRS=oConn.execute("Select * from Irgendwastable where Name='BeyondTheTruth'")

    So ein Recordset-Objekt enthät dann immer die Ergebnisse der Abfrage, die sich einfach über den Namen der jeweiligen Spalte ausgeben lassen. Hat dein Table also 5 Spalten (z.B. Name, Adresse, Telefonnummer, Mailadresse, PersonalID) und du fragst alle Spalten in deinem Selectbefehl ab, dann kannst du sie so ausgeben:

    oRS("Name)
    oRS("Adresse")
    oRS(Telefonnummer")
    oRS("Mailadresse")
    oRS("PersonalID")

    Erwartest du, dass bei deiner Abfrage mehr als eine Zeile zurückgegeben wird, kannst du dich im Recordset mit folgenden Funktionen jeweils eine Zeile hoch, bzw. runter begeben:

    oRS.MovePrevious
    oRS.MoveNext

    zur ersten, bzw. zur letzten Zeile würdest du mit folgenden Funktionen kommen:

    oRS.MoveFirst
    oRS.MoveLast

    Letzter Tip (es sei denn, du fragst noch nach was *g*):

    Mit folgender Schleife kannst du alle Reihen eines Resultsets durchgehen (und innerhalb der Schleife dann z.B. immer jeweils bestimmte Reihen einer Zeile ausgeben, oder auf irgendwas überprüfen... wie auch immer):

    Do Until oRS.EOF

    [WAS GETAN WERDEN SOLL.. z.B. AUSGEBEN DER EINZELNEN ELEMENTE...]

    Loop

    Geändert von BeyondTheTruth (24.10.2005 um 10:57 Uhr)

  5. #5
    Vielen Dank! Werde ich gleich ausprobieren, danke sehr!

    edit:
    Hmm, jetz sgat mir das Ding:

    Der Datenquallname wurde nicht gefunden, es wurde kein Standarttreiber angegeben.


    Hmm, ich hab den Triber installiert und eine Verbindung namens verbindung1 gemacht, müsste diese vielleicht irgenwohin?

    PS:
    Es springt in folgender Zeile an:


    oConn.Open sConn, sUserName, sPassword

    Geändert von raian (24.10.2005 um 13:00 Uhr)

  6. #6

    Users Awaiting Email Confirmation

    Wenn du so arbeitest, wie oeben im Code angegeben, brauchst du keine fixe Verbindung..
    Im Prinzip baust du zur Laufzeit das auf, was du sonst in den ODBC Settings als Verbindung speicherst... (indem du beim oConn.open den "Driver", den "Server", die "Database", sowie "Username" und "Password" angibst.)
    Alternativ kannst du auch eine fixe Verbindung über die System-ODBC Settings einrichten und die im Code verwenden Der Aufruf würde dann lauten

    oConn.open("DSN=Verbinungsname")

    bzw. in deinem Code, weil du den Verbindungsstring ja vorher in einer Variable speicherst:

    sConn = "DSN=Verbindungsname"

    statt eben

    sConn = "Provider=MSDASQLriver=MySQL;" & _
    "Server=" & sServer & "atabase=" & sDBName


    Statt Verbindungsname musst du den Namen eintragen, den du der Verbindung in den ODBC Settings gegeben hast (aus dem vorigen Post entnehme ich mal, dass sie "verbindung1" heißt).

    Theoretisch müsste es aber eben auch auf die Art funktionieren, wie dus jetzt hast...
    Aber bevor wir uns da lange Gedanken machen, probiers zuerst mal es über die vorgefertigte Verbindung.
    Also einfach

    sConn = "Provider=MSDASQLriver=MySQL;" & _
    "Server=" & sServer & "atabase=" & sDBName

    mal raus
    und dafür

    sConn = "DSN=verbindung1"

    rein.

  7. #7
    Wow!

    Jetz hat meine Firewall schon ageschlagen und gesagt: VisualBasic versucht auf das Internet zuzugreifen. Habe ich bestätigt und dann kam Laufzeitfehler:

    [



    EInfach nur eine [


    Nunja, wenigstens ist schonmal eine Verbindung zum Internet da
    Ich überprüfe mal ob da irgendwelche einstellung oder Parameter sind die in dem Script von eben nicht drinne sind...


    edit: Huhu!
    Ich habs hingekreigt das der fehler draußen ist! Aber trotzdem möchte ich jetz das dieser ganze Kram da in meiner Exe Datei steht, und ich net bei anderen das einstellen muss, vorallem weil sie das dann acuh auslesen könen!

  8. #8

    Users Awaiting Email Confirmation

    Zitat Zitat von raian
    Wow!

    Jetz hat meine Firewall schon ageschlagen und gesagt: VisualBasic versucht auf das Internet zuzugreifen. Habe ich bestätigt und dann kam Laufzeitfehler:

    [



    EInfach nur eine [


    Nunja, wenigstens ist schonmal eine Verbindung zum Internet da
    Ich überprüfe mal ob da irgendwelche einstellung oder Parameter sind die in dem Script von eben nicht drinne sind...
    o_O ...
    Sachen gibts *g*

    Zitat Zitat
    edit: Huhu!
    Ich habs hingekreigt das der fehler draußen ist! Aber trotzdem möchte ich jetz das dieser ganze Kram da in meiner Exe Datei steht, und ich net bei anderen das einstellen muss, vorallem weil sie das dann acuh auslesen könen!
    Fein!

    Auslesen können sie gar nix, da das PW bei der Speicherung der ODBC Settings NICHT mitgesichert wird..
    Das Eingeben vom PW dient lediglich um am Ende den Verbindungstest zu machen.
    Das PW, das dann bei der Verbindung verwendet wird, gibst du ja im Code an..
    von daher brauchst du diralso keine Sorgen zu machen.
    Das Einrichten der Verbindung braucht der User nicht selbst zu machen, sondern kann ganz einfach über einen Batch gemacht werden. Zumal ohnehin der ODBC-Treiber erst installiert werden muss - also wirst du wahrscheinlich net drum-rum kommen eine Setup Routine zu kreieren. Besagter Batch kann da dann also auch noch ganz einfach eingebaut werden.
    Bei Interesse, helf ich gern weiter.

    Willst dus dennoch ohne fest im System gespeicherte ODBC Verbindung machen - also nach der Methode wies Anfangs war - heißts wohl erneut auf Fehlersuche gehen...
    Kopier bitte den ganzen Code, wie du ihn jetzt hast (in der Form ohne das "DSN=verbindung" eben) nochmal rein..
    Mal sehen ob ich den gleichen Fehler krieg.

    Aber wie gesagt: Dass der User den ODBC Treiber für MySQL installieren muss, wirst du so oder so nicht verhindern können... D.h. wirst du, wie ebenfalls schon erwähnt, ein kleines Setupprogramm hinzufügen müssen (wenn das ganze wirklich einfach und schnell portable sein soll).

  9. #9
    Gut...hier erstmal der Code:

    Private Sub Form_Load()
    MsgBox "Willkommen bei Wakeup Maike, dem etwas anderen Chatsystem "
    ' Connection-String festlegen
    Dim oConn As New ADODB.Connection
    Dim sConn As String
    Dim sServer As String
    Dim sUserName As String
    Dim sPassword As String
    Dim sDBName As String
    ' Server Hostname (oder IP)
    sServer = "mysql.lima-city.de"
    ' Benutzerdaten
    sUserName = "USER26252"
    sPassword = "*******"
    ' Datenbank-Name
    sDBName = "DB1116949315"
    sConn = "Provider=MSDASQLriver=MySQL;" & _"Server=" & sServer & "atabase=" & sDBName
    ' Connection öffnen
    oConn.Open sConn, sUserName, sPassword
    End Sub

    Private Sub inp1_Change()
    lbl4.Caption = inp1.Text
    End Sub

    Private Sub but1_Click()
    MsgBox "Diese Anwendung ist momentan leider nicht verfügbar!"
    End Sub



    Nun...wie schreibt man denn einen Setup?^^" Aber da kann man ja im Notfall auch diese SetupManager nehmen, soweit ich weiß. So wie es da steht kommt die fehlermeldung mit der Datenquelle die nciht gefunden wird und das kein Standarttreiber zur verfügung steht...


    edit: ich hättes mir zwar nicht zugetraut, aber ich habs hingekriegt

    Ich musste nur bei sConn einen Eintrag mehr machen der den Treiber angibt!

    sConn = "Provider=MSDASQL.1RIVER={MySQL Connector/ODBC v5};Server=" & sServer & "atabase=" & sDBName

    Geändert von raian (24.10.2005 um 20:38 Uhr)

  10. #10

    Users Awaiting Email Confirmation

    Zitat Zitat von raian
    Gut...hier erstmal der Code:

    Private Sub Form_Load()
    MsgBox "Willkommen bei Wakeup Maike, dem etwas anderen Chatsystem "
    ' Connection-String festlegen
    Dim oConn As New ADODB.Connection
    Dim sConn As String
    Dim sServer As String
    Dim sUserName As String
    Dim sPassword As String
    Dim sDBName As String
    ' Server Hostname (oder IP)
    sServer = "mysql.lima-city.de"
    ' Benutzerdaten
    sUserName = "USER26252"
    sPassword = "*******"
    ' Datenbank-Name
    sDBName = "DB1116949315"
    sConn = "Provider=MSDASQL;Driver=MySQL;" & _"Server=" & sServer & "atabase=" & sDBName
    ' Connection öffnen

    [...]
    Ich musste nur bei sConn einen Eintrag mehr machen der den Treiber angibt!

    sConn = "Provider=MSDASQL.1RIVER={MySQL Connector/ODBC v5};Server=" & sServer & "atabase=" & sDBName

    Seltsam - Ich hab im Hinterkopf, dass Driver=MySQL eigentlich immer gereicht hat...
    Kanns zwar hier nicht ausprobieren, weil ich hier keine MySQL DB und Treiber hab (nur MSSQL) - aber werd das heute Abend Zuhause nochmal machen.
    Hätte schwören können, das funzt auch wie am Anfang angegeben.
    Na however - zumindest scheinen ja jetzt alle Probleme aus der Welt geschafft zu sein.
    Was bastelst du da eigentlich? ^^

  11. #11
    Hmm, erstmal nochmal Danke!^^

    Und dann beantworten wa nochmal deine Frage:

    Es wird so ne Art Messenger, okay, MySQL wird da nicht die beste Lösung sein, aber es ist perfekt für meine Zwecke, weils halt nicht NUR ein Messenger werden soll. Das Ding kann zwar Nachrichten übermitteln (Oder mehr soll es mal können^^") aber auch diverse andere Zwecke erfüllen:

    -Wie der Name Wkeup Maike schon sagt, soll es mal eine Art aufweck Programm werden, hab ne Freundin die schläft manchmal fast ein oder so, da is sowas ganz nützlich
    -Dann eben noch die Messenger Funktion
    -Dann die Möglichkeit es meinen Wünschen anzupassen
    -Privates Chatsystem



    Wie gesgat, nciht die beste Lösung, aber einfacher als all die andren die ich mal so gesehen hab

  12. #12
    Hmm, joa.. erstmal Sorry for Doppelpost, aber das mit dem EIntragen klappt nicht, ist an der zeile was falsch:

    ergebnis = oConn.Execute("INSERT INTO wake (message) VALUES ('inp1.Text')")

    ?


    Danke im Voraus^^" *sich langsam blöd vorkommt*

    Übrigens, ja ich habe ergebnis als Objektvariable deklariert wie du es oben gepostet hast Beyondthtruth

  13. #13

    Users Awaiting Email Confirmation

    Hey. Messenger klingt gut. Hab ich auch mal gemacht in VB. Is schon länger her. Müßte mir mal sen Source raussuchen und vielleicht sogar mal erweitern...
    Wäre eigentlich dochmal ne Idee um das Programmierforum wieder in Gang zu bringten: Ein IM für die Kingdom-Community als neues Projekt...
    Mit dem man z.B. auch Überblick über die aktuellsten Themen, bzw. die z.Zt. "heißesten" Themen (mit vielen Posts) hat - sowie sehen kann, wer grade im Ring ist in die Profile der einzelnen User kann. PMs an alle schicken kann, die nicht im IM-Netzwerk des Kingdoms sind schnell einen Überblick über den eigenen PN-Posteingang hat, und und und...
    Wär doch auch mal ein nettes Projekt, finde ich.
    Aber wer weiß ob sich außer uns beiden hier überhaupt noch wer im Thread einfindet.. ^^.

    Na egal - BTT (in diesem Falle nicht "BeyondTheTruth"):

    Also generell fällt mir bei deiner Befehlszeile mal auf, dass du fix den String "inp1.Text" einfügst - und ich denke mal, dass das nicht beabsichtigt ist.
    Was du wohl eher willst ist ein:

    ergebnis = oConn.Execute("INSERT INTO wake (message) VALUES ('" & inp1.Text &"')")

    Wenn dir der Unterschied, bzw. der Grund warum das so gehört nicht ganz klar ist - einfach nochmal nachfragen.
    Schätze aber mal, dass du's verstehen wirst .

    ALLERDINGS sollte auch der vorherige Aufruf keinen Fehler bringen (habs zwar jetzt nicht getestet, aber sieht eigentlich richtig aus...)
    Solltest du also tatsächlich eine Fehlermeldung kriegen, dann poste sie mal bitte.

  14. #14
    Allllso, ich habe jetzt in einem anderen FOrum nochmal hilfe bekommen, und von google... *ist das stundenlange googeln langsam leid*

    Die haben mir gesagt das die mSQL Verbindung nur in dem Sub aktiv ist in dme sie gemacht wurde. Okay, ich verschiebe also die Vberbindung in das
    Sub but1.Click


    Alles cool, dann mache ich noch den eintrag richtig wie du es geschreiben hast (ist mi gar nicht aufgefallen )

    Wenn ich es jetzt per Exe aufrufe, also vorher Comilier stürtzt die Exe Datei ab, wenn ich es nicht compilier und per Entwicklungsumgebung starte stürtzt die gleich mit ab! Und keinen eintrag *frustriert*


    PS: Bei dem projekt wäre ich gleich dabei, aber dafür bräuchte man das Passwort, den Host usw von RPG-Kingdom, und ich glaube irgendwie nicht das der/die liebe Admin das rausgibt... hab gerade vergessen obs ne Frau oder nen Mann ist...


    Nunja, ich poste als Anhang nochmal meinen aktuellen Code.

    PS: Das Merkwürdige ist (Ich habe mit Soppmarken getestet) das das programm erst bei dem End Sub des but1 abstürtzt! Muss dort vielleicht noch eine befehlszeile hin? Ich hatte mal gelsen das die Variable die zum eintragen genommen wird wieder freigemacht werden mus, vielleicht ist das ja der Fehler..*nochmal googlet*



    Code:
    ' Sicherer Textverschl?sselung
    Public Function VernamCode(sOriginal As String, _
      sPassword As String) As String
      
      Dim i As Long
      Dim aktpos As Long
      Dim bAkt As Byte
      Dim bCode As Byte
    
      VernamCode = ""
        
      ' Passwort auf die Länge des Klartextes bringen
      ' Dazu wird z.B. aus "Geheim" dann "GeheimGeheimGehe...."
      aktpos = 1
      For i = Len(sPassword) + 1 To Len(sOriginal)
        sPassword = sPassword & Mid(sPassword, aktpos, 1)
        aktpos = aktpos + 1
        If aktpos > Len(sPassword) Then aktpos = 1
      Next i
        
      For i = 1 To Len(sOriginal)
        bAkt = Asc(Mid(sOriginal, i, 1))
        bCode = Asc(Mid(sPassword, i, 1))
            
        VernamCode = VernamCode & Chr(bAkt Xor bCode)
      Next i
    End Function
    '
    '
    '
    
    Private Sub inp1_Change()
    lbl4.Caption = inp1.Text
    End Sub
    
    Private Sub but1_Click()
    
    Dim oConn As New ADODB.Connection
    Dim sConn As String
    Dim sServer As String
    Dim sUserName As String
    Dim sPassword As String
    Dim sOriginal As String
    Dim sCode As String
    Dim sDBName As String
    ' Server Hostname (oder IP)
    sServer = "mysql.lima-city.de"
    ' Benutzerdaten
    sUserName = "USER26252"
    sOriginal = "********"
    sPassword = "************"
    sCode = VernamCode(sOriginal, sPassword)
    sOriginal = VernamCode(sCode, sPassword)
    ' Datenbank-Name
    sDBName = "DB1116949315"
    sConn = "Provider=MSDASQL.1;DRIVER={MySQL Connector/ODBC v5};Server=" & sServer & ";Database=" & sDBName
    ' Connection öffnen
    oConn.Open sConn, sUserName, sOriginal
    MsgBox "Funktion wird ausgeführt, trage ein... Bitte warten!"
    ' Abschicken des Insert-Statements
    oConn.Execute "INSERT INTO (wake) VALUES ('" & inp1.Text & "')"
    End Sub

  15. #15
    Zitat Zitat von BeyondTheTruth
    Wäre eigentlich dochmal ne Idee um das Programmierforum wieder in Gang zu bringten: Ein IM für die Kingdom-Community als neues Projekt...
    Mit dem man z.B. auch Überblick über die aktuellsten Themen, bzw. die z.Zt. "heißesten" Themen (mit vielen Posts) hat - sowie sehen kann, wer grade im Ring ist in die Profile der einzelnen User kann. PMs an alle schicken kann, die nicht im IM-Netzwerk des Kingdoms sind schnell einen Überblick über den eigenen PN-Posteingang hat, und und und...
    Wär doch auch mal ein nettes Projekt, finde ich.
    Und wie willst du das realisieren? Afaik hat das vB für sowas keine API.
    Und falls du's wirklich machst, bitte portabel und nicht in VB.

  16. #16
    @Masterquest:W ie gesgat, dafür bräuchte man dann die MySQL Daten vom Kingdom!

    Und weil ich viel in PHP Progge.. ich weiß wie die tabellen usw innem Forum aufgebaut sind...

    Es WÜRDE gehen... aber es wäre schwer

  17. #17

    Users Awaiting Email Confirmation

    Zitat Zitat von masterquest
    Und wie willst du das realisieren? Afaik hat das vB für sowas keine API.
    Und falls du's wirklich machst, bitte portabel und nicht in VB.
    Hab ich gesagt, dass ich das mache? o_O (Warum immer jede kleine Idee die man mal so vor sich hinprabbelt, bzw. hinschreibt als "JA! DAS MACH ICH JETZT"" aufgefasst wird *g* ..)

    Zumal viele Wege nach Rom führen - speziell wenn es um "anzapfen", bzw. "korrespondieren" mit Webseiten geht.
    Man benötigt da nicht wirklich Zugriff auf die Datenbanken.. alle Daten, die benötigt werden lassen sich übers Web aufrufen...
    Da gäbe es einerseits den Ansatz z.B. Microsofts IE-Control einzubauen (ja.. das wird jetzt gleich wieder verpöhnt) und die Daten im IM-Client selbst dann entsprechend zu bearbeiten, bzw. auszuwerten oder andererseits alles über eine weitere Zwischenstation (also einen eigenen Server) "absuagen und parsen zu lassen", um an den Client dann nur noch den fertigen Datenstrom zu übergeben - dann könte jeder nach einer Spezifikation wie die Anfragen an den Server auszusehen haben und die Antworten kommen, seinen eigenen Client schreiben und das Ganze könnte auch für mehere OS, bzw. gleich als protable Anwendung gelöst werden...
    Allerdings sehe ich hierbei ein kleines Problem, wenns ums handling von PNs geht. Dazu müsste nämlich immer UserName und Passwort an den Server übertragen werden...

    Zitat Zitat von raian
    PS: Bei dem projekt wäre ich gleich dabei, aber dafür bräuchte man das Passwort, den Host usw von RPG-Kingdom, und ich glaube irgendwie nicht das der/die liebe Admin das rausgibt... hab gerade vergessen obs ne Frau oder nen Mann ist...
    Seit Neuestem beides..
    aber nicht im Einem ^^"


    Zitat Zitat von raian
    Die haben mir gesagt das die mSQL Verbindung nur in dem Sub aktiv ist in dme sie gemacht wurde. Okay, ich verschiebe also die Vberbindung in das
    Hm.. ja.. kann sein.. ^^.
    Werd deinen CODE gleich mal ausprobieren (soweit das geht, ohne die richtige DB Struktur)

    EDIT: Seh grade.. das wird wohl net wirklich viel bringen. Na denn.. mal DB und Tabelle anlegen..
    Was schreibt das Ding denn beim Absturz?
    Übrigens kanns nicht schaden, wenn du am Ende (bzw. beim Unload Event deines Hauptforms, über
    Private Sub Form_Unload(Cancel As Integer) -) ein oConn.close machst, um die Verbindung selbst zu schließen.

    Nochwas fällt mir grad auf: Du führst das SQL Statement zwar aus, hast es aber im aktuell geposteten Code deinem deklariertem RecordSet Objekt nicht zugeordnet.. (bzw. so wie es scheint auch gar nicht mehr deklariert!?)

    EDIT2:
    So.. Code grad kopiert und das entsprechende Form mit Button und Input gebastelt und wollte grade die Tabelle erstellen, da fiel mir auf, dass du in deinem aktuellen INPUT Statement nen Syntaxfehler hast.
    Müßte ja eigentlich heißen
    Code:
    Set ergebnis=  oConn.Execute("INSERT INTO wake(message) VALUES ('" & inp1.Text & "')")
    Du brauchst beim INSERT ja zunächst die Tabelle und dann in Klammer die Felder in die du einfügen willst. (du hattest in der letzten Codeversion nur noch "INSERT INTO (wake) Values" ...!?)


    EDIT3:

    So funzt es bei mir mit MSSQL und einer Tabelle wake mit der Spalte "message":

    Code:
    Private Sub but1_Click()
    
    Dim ergebnis As New ADODB.Recordset
    ' NEU!!!!!!
    
    Dim oConn As New ADODB.Connection
    Dim sConn As String
    Dim sServer As String
    Dim sUserName As String
    Dim sPassword As String
    Dim sOriginal As String
    Dim sCode As String
    Dim sDBName As String
    ' Server Hostname (oder IP)
    
    'BITTE WIEDER DURCH DIE RICHTIGEN DATEN ERSETZEN
    sServer = "localhost"
    ' Benutzerdaten
    sUserName = "Admin"
    sOriginal = "***"
    sPassword = "*******"
    
    'BITTE BEACHTEN, DASS ICH DIE ZWEI ZEILEN AUSKOMMENTIERT HABE. MIR WAR NICHT 
    'GANZ KLAR WARUM DU DAS PW FÜR DEN SQL ZUGRIFF MIT EINER INTERNEN ROUTINE
    '"VERSCHLÜSSELST"... NOTWENDIG???
    'sCode = VernamCode(sOriginal, sPassword)
    'sOriginal = VernamCode(sCode, sPassword)
    
    'UND WEITER DURCH DIE RICHTIGEN WERTE ERSETZEN - DIE DB UND v.A. DEN DRIVER!
    ' Datenbank-Name
    sDBName = "MeetMe"
    sConn = "DRIVER=SQL Server;Server=" & sServer & ";Database=" & sDBName
    
    
    ' Connection öffnen
    oConn.Open sConn, sUserName, sOriginal
    MsgBox "Funktion wird ausgeführt, trage ein... Bitte warten!"
    ' Abschicken des Insert-Statements
    
    'UND SO SOLLTE DAS STATEMENT AUSSEHEN, DAMITS FUNZT ;)
    Set ergebnis = oConn.Execute("INSERT INTO wake(message) VALUES ('" & inp1.Text & "')")
    End Sub
    So.. hab dir eh ganz deutlich gekennzeichnet wo du wieder umschreiben musst, bzw. ich was gemacht habe.
    (und ich war mir net sicher ob das "verschlüsseln" des PWs für den SQL Zugriff Programmintern notwendig ist... deshalb hab ich die zwei Zeilen mal auskommentiert (hab die dafür nötige Routine auch gar net mitkopiert)

    Geändert von BeyondTheTruth (27.10.2005 um 14:14 Uhr)

  18. #18
    Das verschlüsseln des Passwortes ist nicht ötig, aber bei mir stand mal das passwort im Quellcode,, auch nach dem Compilieren, und dem habe ich so abgetan (welche gewählte ausdrucksweise xD)


    Werde deinen code jetzt mal testen, danke im Voraus!

    edit:
    Hmm.. merkwürdig...schießt mir immernoch alles ab... o.O

    Was mach ich falsch... *flenn*

    Geändert von raian (27.10.2005 um 15:51 Uhr)

  19. #19

    Users Awaiting Email Confirmation

    Jo.. dann ist das mit der Verschlüsslung auch verständlich.
    HM.. die IDE stürzt einfach ab?
    Not so good... in dem Fall: kompilieren und ausführen.. dann solltest du auf jeden Fall ne Meldung kriegen..
    (und poste den Code wie er nun bei dir aussieht..)

  20. #20
    Wenn ich es compilier und ausführe stürtzt es auch nur ab und das wars... verwirrend...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •