[ Master Alucard @ 07.05.2007. 15:17 ] @
| Ovaj Problem:
U toku rada programa prave se tabele u Access-ovoj bazi (CREATE TABLE), zatim poslije, recimo klikom na neko dugme treba da se neka od tih tabela izbriše.
Za to sam koristio "DROP TABLE" ali on ne briše tabelu, nego govori da se ta ista koristi, što nebi trebalo da bude.
Koristim globalnu konekciju (OleDbConnection^ conn;) koja se pokreće pri startanju programa (Potrebno tako), poslije koristim uvijek nju kada nešto ćitam i pišem u bazu (preko SQL izraza i OleDbCommand objekta i DataReader-a isl.).
Zna li iko u čemu je problem?
Hvala unaprijed. |
[ bjevta @ 09.05.2007. 07:53 ] @
To pravljenje i brisanje tabela u toku rada nije baš preporučljivo. Šta ako pukne konekcija, reset računara, itd? Osta tabela u bazi, pa moraš da dodaš kod da je briše prilikom sledećeg logovanja, itd. Skuplja dara nego mera.
Završava posao da kreiraš dataset i u njemu takvu tabelu kakvu bi inače pravio u access bazi. Ako nešto i pukne, sve je, ionako, bilo u memoriji.
-----------------------
Kako obrisati? Ako konekciju držiš stalno otvorenu (što je loša praksa), probaj da je zatvoriš pa odmah zatim otvoriš i onda probaš brisanje tabele. Ako imaš više thread-ova ili više korisnika koji svaki za sebe petlja po bazi, vodi računa i o tome.
-----------------------
Uzgred, probaj da utvrdiš da li se problem manifestuje i u single user varijanti?
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.