[SQL&VB] Insert en update statements

Pagina: 1
Acties:

  • ParaNoiMia
  • Registratie: Mei 2000
  • Laatst online: 13-09 20:19
Ik zit niet ergens mee dat niet werkt, maar meer met een vraag of mensen slimme ideeen hebben :)

Ik schrijf redelijk veel insert en update queries in diverse talen, maar momenteel veel met VB.

Je krijgt dan code als:
code:
1
2
3
strsql = "UPDATE klant SET "
strsql = strsql & "bedrijfsnaam='" & Strip Me.txtBedrijfsnaam.Text) & "',"
strsql = strsql & "bezoekstraat='" & Strip(Me.txtBezoekstraat.Text) & "',"

enzovoorts.

Ik worstel al een tijdje met een methode om simpel de tekstvelden aan een databaseveld te koppelen voor wat betreft deze statements (nee niet aankomen met databound dingen). Zo zou je in de tag property de veldnaam kunnen zetten die het veld in de tabel heeft en evt de tabel waar het veld in hoort. Dat betekent minder code aan de achterkant bij het updaten of inserten. Je zou ook nog moeten aangeven wat voor type veld het is (of in een standaard update/insertfunctie aan de hand van de tabelstructuur bepalen wat voor type het is en eventueel nog standaardvalidaties daar toevoegen voor bv numerieke of datumvelden).

Hoe doen jullie dit ? Of schrijven we allemaal braaf elke keer de code ?

Verwijderd

SQL Server Stored Procedures :P
code:
1
2
3
4
5
6
7
8
Dim adoCmd as New ADODB.Command

adoCmd.CommandText = "updateRecord"
adoCmd.CommandType = adCmdStoredProc
adoCmd.Parameters.Refresh()

adoCmd.Parameters("Field") = strValue
adoCmd.Execute

... :P maar ja dat werkt niet met mysql enzo

  • ParaNoiMia
  • Registratie: Mei 2000
  • Laatst online: 13-09 20:19
Jawel, maar dat gaat me niet ver genoeg.
Je hebt een textbox en daar ga je eerst data inpompen door een select statement en dan een text1.text=rstrec("veldnaam")

Daarna ga je bij de update het weer toewijzen (of je dat nou met een SP doet of niet) rstrec("veldnaam")=text1.text

En bij een insert nog een keer. Het is zo dubbelop en stomzinnig werk

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 19:13

Crazy D

I think we should take a look.

Een manier die ik weleens ergens gebruikt heb, is alles met classes doen. In die zin, dat de tabel die je aan het onderhouden bent, in een class komt, met de veldnamen als properties. In de tag van de controls stonden de veldnamen, en dan kan je in een simpel loopje alle controls doorlopen, en de waarde assignen aan de properties van de class (of andersom natuurlijk).
D.m.v. een event, met een collection, vingen we op bij het updaten wat er niet goed was, en welke velden dat om ging, zodat we die textboxjes nog even een andere kleur konden geven als indicatie dat er iets niet goed was.
Werkte vrij eenvoudig en behoorlijk goed.

Exact expert nodig?