"Substitution" in SELECT-Anweisung
-
Hi,
ich habe eine MS-SQL-Datenbank und möchte dort einen Wert auslesen, ungefähr so:... int i=0; CString bName; i = m_benutzernamen.GetCurSel(); m_benutzernamen.GetLBText(i, bName); CODBCset_Nutzer pwd; pwd.Open(CRecordset::dynaset,_T("SELECT * FROM Nutzer WEHRE Name=bName")); //und bName ist jetzt nicht die variable,sondern ein normales char ...
Wie kann ich der SELECT-Anweisung klar machn, dass sie auf die Variable bName zugreifen soll?(Ähnlich wie bei UNIX die "Kommandosubstitution") Oder bin ich völlig auf dem Holzweg?
-
"string =" + bname
Devil
-
Etwa so hier?
pwd.Open(CRecordset::dynaset,_T("SELECT * FROM Nutzer WHERE Name =" + bName));
Das funzt ni.
-
Nun NEO so kann das nicht funktionieren...
Wie devil schon sagte ist es richtig nur
müsstest du es wie folgt schreiben.
CString bName;
i = m_benutzernamen.GetCurSel();
m_benutzernamen.GetLBText(i, bName);CString strSQL = "Select * from Nutzer where Name = '";
strSQL += bName;
strSQL += "'";pwd.Open(CRecordset::dynaset,_T(strSQL));
sollte eigentlich funktionieren......
etc.....
[ Dieser Beitrag wurde am 27.11.2002 um 15:18 Uhr von DaDaywalker editiert. ]
-
Moin Ihr,
es könnte funktionieren wenn in bName auch zum Anfang und Ende das einfache Hochkomma enthalten ist. Sonst nicht.
Gruß, Tom
-
Hi,
das mit den Hochkommas hab ich auch schon rausgekriegt.
Das funzt jetzt.
Danke an alle.