Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP.NET, VB] Access DB comprimeren

Pagina: 1
Acties:

  • StijnH
  • Registratie: December 2005
  • Laatst online: 09-11 11:11
Hallo,

ik ben op zoek naar een manier om een Access Database te comprimeren.
Ik werk in ASP.NET met VB als taal.

Beschikbare manieren:
- via een menu in Access de database 'comprimeren en herstellen'
- dmv een library klik

Het project zit in de ontwikkelingsfase, en ik wil snel tabellen wissen EN de autonummering herbeginnen.
SQL lijkt me het snelste, maar jammer genoeg werkt een TRUNCATE niet op een Access database (ook niet op een SQL Server DB dacht ik).

Heeft iemand een oplossing? Of moet ik roeien met de riemen die ik heb?

  • !null
  • Registratie: Maart 2008
  • Laatst online: 18-11 11:06
Wat heeft tabellen wissen en autonummering herbeginnen met database comprimeren te maken?
Ik denk trouwens dat je moet roeien met de riemen die je hebt. Of andere riemen nemen.

Ampera-e (60kWh) -> (66kWh)


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Voor zover ik het begrijp is JRO standaard beschikbaar vanaf MDAC 2.1. En als ik het mij goed herinner krijg je MDAC 2.8 standaard op Windows XP. Dus volgens mij kun je die library gewoon aanspreken. Dus wat is daar het probleem mee?

Zoals hierboven ook al gezegd, compact doet helemaal geen truncate uitvoeren op tabellen. Het enige wat het doet is ruimte die vrijgekomen is door delete statements terugclaimen. Of bedoel je in combinatie met een "delete * from table" actie?

  • vivo53280
  • Registratie: September 2001
  • Laatst online: 17-02-2019
Misschien is het mogelijk een classic asp pagina te integreren en executen ?

Ik heb deze code wel eens gebruikt. asp compact

Werkte prima.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
-Stijn- schreef op dinsdag 22 april 2008 @ 13:44:
en ik wil snel tabellen wissen EN de autonummering herbeginnen.
Zoals hierboven al aangegeven: Als je 1 (of een paar) tabellen wil wissen dan kun je gewoon delete * from table doen en dan 'comprimeren' met CompactDatabase. (Bijgevolg in MSAccess is inderdaad dat autonummering gereset wordt als ik me niet vergis). Wat je ook kan doen is een DROP Table en daarna de tabel opnieuw maken met DDL.
Als je doel echter een 'lege db overhouden' is (dus 'alle' tabellen wissen) dan kun je beter de hele MDB wegmikkeren en met een SQL scriptje met wat DDL de tabellen/views/etc opnieuw aanmaken.

[ Voor 23% gewijzigd door RobIII op 22-04-2008 14:15 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • lier
  • Registratie: Januari 2004
  • Laatst online: 15:56

lier

MikroTik nerd

vivo53280 schreef op dinsdag 22 april 2008 @ 14:06:
Misschien is het mogelijk een classic asp pagina te integreren en executen ?

Ik heb deze code wel eens gebruikt. asp compact

Werkte prima.
8)7 8)7 8)7 8)7 8)7 8)7 8)7 8)7 8)7 8)7

Tip...ga gebruik maken van MS SQL. Kan je enorm veel mee (en leer je gelijk een echt platform).

Eerst het probleem, dan de oplossing


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 18-11 23:16

TeeDee

CQB 241

Als het puur om het 'resetten' van het autoid field gaat:
Voor Access:
SQL:
1
ALTER TABLE tblProblems ALTER COLUMN [Key] COUNTER(1,1)

Voor MS SQL:
SQL:
1
DBCC CHECKIDENT (yourtable, reseed, 1 (of 0, kan ook))


Zo, volgens mij genoeg mogelijkheden en tips :P

Heart..pumps blood.Has nothing to do with emotion! Bored


  • StijnH
  • Registratie: December 2005
  • Laatst online: 09-11 11:11
TeeDee schreef op dinsdag 22 april 2008 @ 14:30:
Als het puur om het 'resetten' van het autoid field gaat:
Voor Access:
SQL:
1
ALTER TABLE tblProblems ALTER COLUMN [Key] COUNTER(1,1)
Daar was ik naar op zoek, bedankt ;)
RobIII schreef op dinsdag 22 april 2008 @ 14:08:
[...]
Bijgevolg in MSAccess is inderdaad dat autonummering gereset wordt als ik me niet vergis
Inderdaad :)

Nog wat info voor de anderen die antwoordden: ik werk rechtstreeks via FTP op een ASP server.
Ik gebruik Access omdat het moet :+ is voor mijn eindwerk, vandaar :)

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Een tussen oplossing is het gebruik van SQL Server Compact. Dit is een los database bestand, maar werkt wel met T-SQL. Dat maakt later een overstap naar een volledige SQL Server database gemakkelijker.

In .NET kun je compact database 'beheren' middels de SqlCeEngine class uit de System.Data.SqlCe namespace.

Via een truckje kun je ook SqlCe gebruiken in combinatie met LinqToSql:
code:
1
SqlMetal SqlCeDatabase.sdf /dbml:Database.dbml

If it isn't broken, fix it until it is..

Pagina: 1