Jag håller på att planera en databasapplikation och har då lite frågor... Jag har nästan enbart använt mig av formulär i Access tidigare och där finns ju all databashantering redan inbyggd. ett par riktlinjer, Tack för ett snabbt svar! Lite följd frågor... För att fylla en grid kontroll utan att använda sig av en data kontroll, så måste du via kod lägga till dem.. Eller via kod koppla data source, data member.. Artikelserie, MUMS!!! hmm, bra fråga.. har jag aldrig funderat på... usch vad jobbigt ;-) Vart får man tag på true dbgrid då? Det tråkiga med VB är att man fixar det väldigt enkelt i Access... mmm, men försök få en access lösning att skala över ett nätverk... Dessutom kan du få förbannat mycket annan funktionalitet och design som access inte har en chans att efterlikna... Jo, jag vet, det är ju därför som jag vill gå över till VB...Expertutlåtande om databasapplikation tack!
Applikationen ska köras i nätverk, gemensam databas för alla användarna alltså. Inmatningsformuläret ska innehålla vad som i Access kallas underformulär (=en tabell som visas i formuläret som är relaterad till tabellen som huvudformuläret är kopplat till).
Ska man använda sig av någon datakontroll eller ska man koda all datahantering själv?
Om man kodar själv, hur gör man generellt då? (lagrar man datat som objekt, i arrayer eller vad???)
Ska man använda DAO/ADO? För/nackdelar???
Finns det något smidigt sätt att se till att bara en person redigerar en post i taget eller får man skriva det själv?
Många frågor blev det...
/JohanSv: Expertutlåtande om databasapplikation tack!
1) använd komponenter för all transport mellen db och klienterna.. Det innebär att du får skriva all kod för hämtning/lämning av data själv.
Födelen med kopmoneter är många saker, men förutom ökad skalbarhet och last tålighet, så kommer det bara finnas ett ställe du behöver ändra på när systemet väl är i drift. OM databas koden ligger i klienten, kommer alla klienter vara tvungan att uppdateras istället för en komponent på servern.
2) När du skriver kod mot ado själv, använder du dig i 90% av alla fall av ett objekt kallat recordset. Recordsettet inehåller all data och en mängd funktioner för att manipulera/hämta och titta på den datan. Det går också att hämta upp en array, vilket ger en snabbare hantering men svårare att koda runt.
3) ADO är det som är de fact standard idag. DAO är gammalt och förlegat. ADO'n är optimerad för att använda ole db och skippa odbc kopplingar vilka i många fall jämfört med ole db är långsamt och klumpigt.
4) Om du arbetar med recordset kan du låsa rader i databasen när du hämtar upp dem. Att hantera den funktionaliteten är delvis automatiserad men du kommer vara tvungen att skriva kod som klarar av att reagera på vissa special fall.. Köp en bok om ado och lär dig arbeta med recordsets och dess olika låsnings principer.
Lycka till Sv: Expertutlåtande om databasapplikation tack!
Om jag öppnar ett recordset med de data jag vill arbeta med, uppdateras de i realtid när någon annan användare ändra någon av posterna i mitt recordset eller måste jag uppdatera med jämna mellanrum?
Hur gör man för att använda en Grid-kontroll om man inte har någon datakontroll? Jag vill alltså att resultatet ska se ut ungefär såhär http://www.datavaxt.se/press/dataskog.gif . Finns det någon grid kontroll där man kan ha combo-boxa i griden?
/JohanSv: Expertutlåtande om databasapplikation tack!
Du kan få datan att automatiskt uppdateras om du använder en typ av cursor som heter open key set och lägger cursorn serverside .. men detta är inte speciellt flexibelt och kräver fantastiskt mycket av servern.
Varför kommer och hur man kan göra istället tänker jag behandla i en artikel serie inom kort.. Sv: Expertutlåtande om databasapplikation tack!
Kan man göra något som ser ut ungefär såhär i VB med gridkontroll eller något liknande?
http://www.datavaxt.se/tmplist.gif
/JohanSv: Expertutlåtande om databasapplikation tack!
I'll be back... Sv: Expertutlåtande om databasapplikation tack!
Kolla på true dbgrid, den klarar nog det (kostar pengar - men det är det värt). Du kan även kolla på www.vbaccelerator.com som jag har för mig har en liknande kontroll - dock med 100% kod till.
/PelleSv: Expertutlåtande om databasapplikation tack!
/JohanSv: Expertutlåtande om databasapplikation tack!
Sv: Expertutlåtande om databasapplikation tack!
/Johan