Met de update naar versie 8.0.2 wordt het de hackers moeilijker gemaakt in te breken in een database (SQL injection). De code achter een aantal Server Behaviors werd hiervoor aangepast.
Volgende Server Behaviors reageren nu anders:
Deze wijzigingen hebben tot gevolg dat u een aantal oefeningen in het handboek zal moeten aanpassen.
Een variabele binnen een recordset kende voorheen 2 waardes (Default Value en Runtime Value). Vanaf versie 8.0.2 moet u aan een variabele 4 eigenschappen toekennen:
Omdat u het type van de variabele vanaf nu meegeeft in de declaratie, mag u het type niet meer in de query verwerken.
In de meeste toepassingen (bijvoorbeeld met een zoekfunctie) werd een STRING als volgt verwerkt in de query (zie hst 12.6):
Wordt:
Ook nieuw is dat een variabele binnen een query maar eenmaal mag gebruikt worden. Voor bepaalde query's zal u dus extra variabelen moeten aanmaken (zie bijvoorbeeld hst 12.7).
Wordt:
Geef de variabele var2 net dezelfde eigenschappen als de variabele MMColParam.
Net zoals bij een recordset moet u bij een command twee extra eigenschappen aan een variabele toekennen, namelijk Type en Size. De eigenschappen Type en Size kan u aflezen uit het Databases palet of uit het Bindings palet.
Als voorbeeld het Delete Command uit hst 12.10.2.
Naast de toch wel belangrijke nieuwigheden in versie 8.0.2 zijn er spijtig genoeg ook enkele foutjes ingeslopen.
Een datumveld zet u best in het formaat jjjj-mm-dd als u deze aan een database wil toevoegen of aanpassen (zie hst 13.5).
Als u echter een OLE DB connectiestring gebruikt (de aanbevolen connectie), dan worden sommige data foutief in de database geplaatst (maand en dag worden omgewisseld).
Dit kan u oplossen door de OLE DB connectiestring te vervangen door een ODBC connectiestring.
Beide Server Behaviors genereren een fout indien ze SAMEN op één pagina voorkomen. (De variabele MM_editRedirectUrl wordt tweemaal gedimensioneerd.)
Dit kan u makkelijk oplossen door in de broncode één van deze definities in commentaar te zetten.