Momenteel ben ik bezig met een project waarbij ik heb gekozen om gebruik te gaan maken van SQL replicatie tussen een SQL Server 2005 Standard en een SQL Server 2005 Express editie. Door gebruik te maken van de standaard replicatie methoden hoef ik zelf geen applicatie meer te maken welke eigenlijk precies hetzelfde doet, namelijk tabellen, stored procedures en functies synchroniseren tussen 2 databases.
Het opzetten van een Publication en Subscription is helemaal niet lastig.
Read more →Vandaag kwamen we op het werk een interessant stukje SQL injection tegen. Hoe je ’normaal’ een SQL injection aanval doet op een website is mij wel redelijk bekend. Gewoon in de querystring iets toevoegen als ';SELECT%20Naam%20FROM%20Tabel of iets in die trend. Niet echt hogere wiskunde dus. Als de variabele niet goed is beveiligd in de website danwel de database, dan kun je voor verassende dingen komen te staan. Vandaag zagen we echter een variant op het bovengenoemde fenomeen, namelijk een binaire string toevoegen in je querystring.
Read more →In de data access laag van m’n projecten werd het nu toch wel een drukke boel met verschillende LINQ to SQL queries. Aangezien je namelijk niet goed dynamische LINQ-queries kunt maken, moet je eigenlijk voor iedere ‘uitzondering’ een aparte query maken. Je krijgt dan zoiets als dit:
if (criteria.PeriodeVan != null && criteria.PeriodeTot != null) { var query = (from post in dataContext.GetTable() where post.Item.CreatieDD >= criteria.PeriodeVan && post.Item.CreatieDD <= criteria.
Read more →De afgelopen tijd merkte ik op dat de grootte van een bepaalde database waar ik vaak mee werk behoorlijk groot wordt in korte tijd. Om te onderzoeken aan welke tabel dit te wijten was moest ik weten hoe groot iedere tabel was. Dit kan uiteraard door de eigenschappen van iedere tabel op te vragen, maar als je meer dan 50 tabellen hebt duurt dit veel te lang.
Dat moet ook automatisch kunnen.
Read more →Afgelopen week las ik iets over tabel fragmentatie. Hier had ik eigenlijk nog nooit van gehoord. Wel van bestandsfragmentatie en dergelijke, maar nog nooit dat tabellen ook gefragmenteerd kunnen raken.
Op zich wel logisch natuurlijk als er veel in wordt gewijzigd.
Belangrijke punten waaraan je tabel fragmentatie aan kunt herkennen zijn:
Langzame performance Veel disk activiteit Weinig gebruik van caching Fragmentatie treedt op wanneer er data wordt gewijzigd met INSERT, UPDATE en DELETE statements.
Read more →