PDA

Visualizza la versione completa : [VB6] generare comandi SQL


gecoss
08-11-2002, 17:44
sto creando un oggetto per generare comandi SQL in automatico, vorrei sapere in termini di scalabilit del software se consigliabile continuare oppure preferibile inserire manualmente la stringa.


Grazie

sebamix
08-11-2002, 17:57
Dipende da cosa intendi per generare stringhe SQL in automatico...

:ciauz:

gecoss
08-11-2002, 18:02
una funzione che accetta:



- un parametro che definiche la tabella

- un array che definisce le colonne

- un array che definisce i valori

e quindi avr una cosa del genere


Public Function CreateString(ByVal varTbl As String, ByVal varColonne As Variant, Optional ByVal varValori As Variant) As String

Dim stringa As String
Dim posUguale As Integer
Dim i As Integer
posUguale = 0


Select Case m_SType

Case SType.Selezione

stringa = "SELECT "
For i = 0 To UBound(varColonne)

posUguale = InStr(varColonne(i), "=")

If i - 1 = 0 Then stringa = stringa & varColonne(i) & " FROM " & varTbl: Exit For

If posUguale > 0 Then
stringa = stringa & Left(varColonne(i), posUguale - 1) & ", "
Else
stringa = stringa & varColonne(i) & ", "
End If

Next i


ovviamente da continuare

gecoss
08-11-2002, 18:03
scusa e come risultato avrei :

select nome, cognome from tblusers

oppure

una insert into

oppure una update

sebamix
08-11-2002, 19:47
Praticamente tu vuoi fare una specie di wrapper di sintassi SQL.
Potrebbe essere utile se la tua applicazione gira su diversi DBMS.
Comunque la cosa si risolve se usi sintassi SQL standard ed inserisci le stringhe a mano.

Fa molto pi professional il wrapper per :bubu:

Loading