Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Creare database access da visual studio 2008
sabato 26 dicembre 2009 - 15.51
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Mau67
Profilo
| Expert
917
messaggi | Data Invio:
sab 26 dic 2009 - 15:51
Buone feste a tutto il forum,
Ho un progetto sviluppato in visual studio 2008, e so le tabelle in access, adesso ogni volta che che aggiorno il mio progetto devo prima inserire tabelle e campi in access e poi implementare il progetto.
Io vorrei invece fare creare il database e le tabelle in access quando avvio il progetto facendogli controllare se esiste il database, se esiste non lo ricrea e passa a controllare le tabelle quelle che non trova le crea quelle che trova, controlla i campi e se ci sono dei campi che mancano li aggiunge.
Non ho minimamente idea di come si posa fare qualcuno può darmi una mano Grazie
E ancora buone feste
Mau67
fabricosta
Profilo
| Newbie
17
messaggi | Data Invio:
mer 30 dic 2009 - 00:11
ciao mao,
puoi utilizzare la fileinfo (system.io) per controllare se il file mdb esiste...
imports system
imports system.io
public class miaform
.....
private function controllafile(byval nomefile as string) as boolean
dim Finfo as new fileinfo(nomefile)
if finfo.exsist = false then
return false
else
return true
end if.
end function
end class
......
per quanto riguarda le singole tabelle solitamente metto una tabella standard dove inserisco la versione del DB
'dichiaro una variabile a livello di classe
dim versione as string
private sub recuperavers
using cn as oledbconnection = new oledbconnection(miastringa)
cn.open
dim ssql as string = "select versione from tabella"
cmd = new oledbcommand
cmd.connection = cn
cmd.commandtype = commandtype.text
cmd.commandtext = ssql
try
da.fill(ds, "versdb")
catch ex as exception
messagebox.show(ex.message)
exit sub
end try
try
if ds.tables("versdb").rows.count > 0 then
versione = cstr(ds.tables("versdb").rows(0).item("versione"))
else
versione = ""
end if
catch ex as exception
messagebox.show(ex.message)
versione = ""
end try
end if
cn.close
end using
end sub
, che viene controllata in fase di apertura del progetto con un file statico che contiene la versione.
Private Sub leggidirtesto()
Try
Using sr As StreamReader = New StreamReader(Environment.CurrentDirectory & "versdb.txt")
Dim dir As String
Do
ver = sr.ReadLine
If Not ver Is Nothing Then
recuperavers()
if versione = "" Then creadb
if ver not = versione Then
'richiamaclassegiusta
end if
Else
Exit Do
End If
Loop
End Using
Catch ex As Exception
MessageBox.Show("versione non codificata contattare l'assistenza", "Attenzione!!!", _
MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
End Sub
a seconda della versione richiamo la funzione opportuna (una nuova ad ogni cambiamento) per la creazione/allineamento tabelle/correzione valori.
spero di esserti stato utile.
ciao, Fabrizio
Mau67
Profilo
| Expert
917
messaggi | Data Invio:
mer 30 dic 2009 - 10:47
Ciao Fabrizio,
Scusa ma nella tabella della versione quanti campi ci sono? che tipo (testo, numerico ecc.)?
Il codice che mi hai postato va inserito tutto nel Form?
Non avresti un esempio di progetto con un solo form dove vedere materialmente come gestisci il codice?
Te ne sarei immensamente grato.
Ciao Maurizio
Mau67
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !