CREARE DATABASE ACCESS ED ESEGUIRE COMANDI SQL (CREARE TABLE / INSERT INTO / SELECT )
Oggi vi voglio mettere a disposizione il codice di come creare una DATABASE ACCESS interamente da codice VB.NET .
Public Class Form1
Const DataBaseName = "C:\Database_test1111.mdb"
Dim dr As OleDbDataReader
Dim connessione As ADOX.Catalog = New ADOX.Catalog 'crea un nuovo oggetto connessione di tipo ADOX.Catalog
Dim archivio As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + DataBaseName + ";" + "Jet OLEDB:Engine Type=5") 'Crea un nuovo oggetto archivio di tipo OleDbConnection
Private Sub CreaDatabase(ByVal DataBaseName As String)
Dim FSI As New System.IO.FileInfo(DataBaseName)
If FSI.Exists = False Then
connessione.Create("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + DataBaseName + ";" + "Jet OLEDB:Engine Type=5") 'Crea un nuovo database nella directory del desktop con nome
Database_test1111.mdb
End If
End Sub
Private Sub CreaTabella()
Try
Dim com As New OleDb.OleDbCommand("CREATE TABLE [Docenti] ([ID] AutoIncrement NOT NULL PRIMARY KEY, [Nome] TEXT(255) NOT NULL,[Cognome] TEXT(255) NOT NULL,[Luogo di nascita] TEXT(255) NOT NULL)", archivio) 'Crea una nuova variabile com per inviare un comando SQL al database archivio per creare una tabella Docenti con i campi Nome, Cognome e Luogo di nascita al suo interno. archivio indica che va inviato alla connessione aperta in archivio
archivio.Open() 'Apri la connessione con il database
com.ExecuteNonQuery() 'Esegui comando SQL
archivio.Close() 'Chiudi la connessione con il database
Catch ex As Exception
archivio.Close()
MsgBox("Errore Creare Tabella")
End Try
End Sub
Private Sub AggiungiRecord()
Dim CountRecord As Integer
CountRecord = ContaRecordTabella()
CountRecord = CountRecord + 1
Dim SQLCommand As String
SQLCommand = "INSERT INTO [Docenti]([ID], [Nome], [Cognome], [Luogo di nascita]) VALUES ('" & CountRecord & "','Mario', 'Rossi', 'Roma') "
Try
Dim com As New OleDb.OleDbCommand(SQLCommand, archivio)
archivio.Open() 'Apri la connessione con il database
com.ExecuteNonQuery() 'Esegui comando SQL
archivio.Close() 'Chiudi la connessione con il database
Catch ex As Exception
archivio.Close()
MsgBox("Errore Aggiornamento Record")
End Try
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
CreaDatabase(
DataBaseName )
CreaTabella()
AggiungiRecord()
AggiungiRecord()
SelezionaTutto()
ContaRecordTabella()
End Sub
Private Sub SelezionaTutto()
Dim com As New OleDb.OleDbCommand("SELECT * FROM [Docenti] ", archivio)
Try
archivio.Open() 'Apri la connessione con il database
dr = com.ExecuteReader
While dr.Read()
Debug.Print(dr(0)) 'Leggi la prima colonna
Debug.Print(dr(1)) 'Leggi la seconda colonna
Debug.Print(dr(2)) 'Leggi la terza colonna
End While
Catch
dr.Close()
archivio.Close()
MsgBox("Errore popolazione tabella select *")
End Try
dr.Close()
archivio.Close()
End Sub
Private Function ContaRecordTabella() As Integer
Dim CountRecord As Integer
Dim com As New OleDb.OleDbCommand("SELECT COUNT(ID) FROM [Docenti] ", archivio)
Try
archivio.Open() 'Apri la connessione con il database
dr = com.ExecuteReader
While dr.Read()
' Debug.Print(dr(0)) 'Leggi la prima colonna
CountRecord = dr(0) 'Copia il risultato della ricerca e inseriscilo nella variabile CountRecord
End While
Catch
dr.Close()
archivio.Close()
MsgBox("Errore Contatore Record*")
End Try
dr.Close()
archivio.Close()
Return CountRecord
End Function
End Class