Meer dan 255 velden koppelen in MS Access database

Status
Niet open voor verdere reacties.

richard99

Gebruiker
Lid geworden
17 apr 2010
Berichten
95
Kan iemand mij vertellen om meer velden in te laden in een MS Access database?
Ik heb een MS Access 2003 applicatie draaien en ik koppel tabellen met een SQLserver database.
Punt is dat de SQL serverdatabase zo'n 300 velden heeft en ik alleen de eerste 255 velden kan koppelen.
Ik koppel de database via vba en ik hoop dat er mogelijkheden in vba zijn om de maximumvelden van 255 te verhogen.

Onderstaande is de syntaxis die ik gebruik om tabellen te koppelen.
For i = 1 To 40
If strTables(i) <> "" Then
Call DeleteTableIfExist(strTables(i))
Set tdfLinked = CurrentDb.CreateTableDef(strTables(i))
tdfLinked.Connect = strConnectString
tdfLinked.SourceTableName = strTables(i)
CurrentDb.TableDefs.Append tdfLinked
End If
Next i
 
Als je die methode gevonden hebt, kun je dan ook gelijk uitzoeken hoe we sneller als het licht kunnen reizen? Want dan kun jij fysieke grenzen overschrijden, en daar is echt een markt voor :D. Wat ik bedoel te zeggen is natuurlijk: een maximum is niet voor niks een maximum. Daar kun je niet voorbij.
Daarbij maakt het niet uit of je VBA gebruikt of niet. Een maximum is niet aan een taal gebonden. Je kunt hooguit meerdere views maken, die koppelen en in Access samenvoegen. Maar dan nog: 255 velden blijft 255 velden.
 
Haha ok dus dat is niet mogelijk.
Ik dacht misschien is er een upgrade variant of iets dergelijks.
 
Ik zou behoorlijk nerveus worden van een tabel met 300 velden.... Microsoft ook :).
 
Ik begrijp je punt maar we weten wel wat we doen.
Het zijn eigenlijk zo'n 70 velden want we hebben er voor gekozen om de vertaling in dezelfde tabel te herbergen.
Alle Nederlandstalige veldennamen eindigen op _NL en we hebben de volgende talen: _EN, _DU, _SP, _FR.
80% van de veldnamen zijn het vertalingvelden.
Wij konden dit ook in een ander tabel plaatsen echter wisten we niet dat dit zo snel zou groeien.
Nu schrijven we een updatetaak die iedere dag de vertaling verzorgd zodat ik niet de taalvelden hoef te koppelen.
 
Als je dat al van tevoren weet, snap ik niet dat je de vertalingen in hetzelfde record zet. Bijzonder ongelukkige constructie die totaal geen winst oplevert voor je database. En, zoals nu blijkt, juist problemen veroorzaakt.
Opzetten van een database is niet allen uitgaan van gemakzucht, maar ook van het afzetten van voor- en nadelen, en kiezen voor de meest flexibele oplossing. En volgens mij zijn jullie daar, afgaande uiteraard op de uiterst summiere informatie die we nu hebben, met een grote boog omheen gelopen.
 
In het begin was het max 80 velden echter door het enorme succes is het uit zijn jasje gegroeid.
We waren misschien wat te voorzichtig dat het niet zo'n groot succes zou zijn anders hadden we idd de ruimte gecreeerd de vertalingen in een ander tabel te zetten.
Daar heb je natuurlijk volkomen gelijk in.
 
Of jullie weten wat je doet waag ik ten zeerste te betwijfelen.
Wat je had moeten doen (en ik zou dat alsnog doen) is een kolom "taal" toevoegen en vertalingen per record per taal vastleggen.
Met je huidige aanpak vraag je om problemen.

PS waarom zou je daarnaast gegevens uit SQL Server nogmaals vast willen gaan leggen in MS Access?

Tardis
 
Zo zou ik het inderdaad ook doen, met eventueel een veld waarin je aangeeft om welk onderwerp het gaat, als je de verschillende talen bij elkaar wilt kunnen groeperen. Als je bijvoorbeeld vertalingen hebt voor een formulier, dan moet bij elk taalrecord naast de taal ook het formulier opgeslagen worden. Bij openen van het formulier kijk je dan welke taal moet worden ingelezen (op basis van gebruikers ID kan ik mij voorstellen) en lees je de juiste taal in.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan