Creazione di un nuovo database (.mdb) con ADO.NET
-
19-08-2019 - |
Domanda
Come posso creare un file .mdb vuoto? Sto usando ADO.NET e C #. Grazie!
Soluzione
Il modo migliore è copiare un file .mdb preesistente.
Lo stesso vale per la maggior parte degli altri formati di database basati su file a cui ADO.NET può connettersi, come i file Excel. Poiché un sistema di database basato su file utilizza il filesystem come host e API per la comunicazione con il mondo esterno (al contrario di MSSQL che comunica tramite TCP-IP), è del tutto naturale utilizzare System.IO per azioni che, ad esempio, MS- L'SQL verrebbe eseguito con T-SQL o stored procedure di sistema o un'API specifica per i dati destinata a tali utenti (ad esempio SMO nel caso del server SQL).
COPY model.mdb newdb.mdb
è il comando create DB
DEL newdb.mdb è il comando drop
DB, ecc.
Altri suggerimenti
Non credo che ci sia un " .NET nativo " modo per farlo, ma è ancora possibile avvolgere ADOX:
using ADOX; // add a COM reference to "Microsoft ADO Ext. x.x for DDL and Security"
static void CreateMdb(string fileNameWithPath)
{
ADOX.Catalog cat = new ADOX.Catalog();
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Jet OLEDB:Engine Type=5";
cat.Create(String.Format(connstr, fileNameWithPath));
cat = null;
}