¿Cómo se crea un archivo de base de datos de Microsoft Access en C# si aún no existe?¿Cómo crear la base de datos de Microsoft Access en C# mediante programación?
Respuesta
La respuesta más sencilla es insertar un archivo .mdb
/.accdb
vacío en su programa y escribirlo en el disco.
La respuesta correcta es utilizar la interoperabilidad COM con la biblioteca ADOX:
var cat = new ADOX.Catalog()
cat.Create(connectionString);
Recuerde que debe generar sus cadenas de conexión usando OleDbConnectionStringBuilder
.
Sugerencia: La "biblioteca ADOX" se puede encontrar como "Microsoft ADO Ext. 6.0 para DDL y seguridad" en mi máquina – Matthias
Probar:
using ADOX; //Requires Microsoft ADO Ext. 2.8 for DDL and Security
using ADODB;
public bool CreateNewAccessDatabase(string fileName)
{
bool result = false;
ADOX.Catalog cat = new ADOX.Catalog();
ADOX.Table table = new ADOX.Table();
//Create the table and it's fields.
table.Name = "Table1";
table.Columns.Append("Field1");
table.Columns.Append("Field2");
try
{
cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + fileName + "; Jet OLEDB:Engine Type=5");
cat.Tables.Append(table);
//Now Close the database
ADODB.Connection con = cat.ActiveConnection as ADODB.Connection;
if (con != null)
con.Close();
result = true;
}
catch (Exception ex)
{
result = false;
}
cat = null;
return result;
}
http://zamirsblog.blogspot.com/2010/11/creating-access-database.html
En mi ordenador, Windows 7 SP1 Professional de 64 bits, me encontré con Microsoft ADO Ext. 2.8 para DDL y seguridad en C: \ Archivos de programa \ Archivos comunes \ System \ ado \ msadox28.dll.
También se encuentra como referencia:
que se incluye como ADOX en las referencias
Por defecto, las columnas se crean como texto [ 255]. Aquí hay algunos ejemplos para crear columnas como diferentes tipos de datos.
table.Columns.Append("PartNumber", ADOX.DataTypeEnum.adVarWChar, 6); // text[6]
table.Columns.Append("AnInteger", ADOX.DataTypeEnum.adInteger); // Integer
me encontré con esta lista de tipos de datos para crear y leer los campos de base de datos de acceso
acceso a texto = adVarWChar
Memo acceso = adLongVarWChar
acceso Numérico Byte = adUnsignedTinyInt
Número entero de acceso numérico = adSmallInt
acceso numérico entero largo = adInteger
acceso numérico de precisión simple = adSingle
acceso numérico de doble precisión = adDouble
acceso numérico Replicatie-id = adGuid
acceso numérico decimal = adNumeric
Fecha/hora de acceso = adDate
acceso monetaria = adCurrency
acceso Autonumérico = adInteger
acceso Sí/No = adBoolean
acceso HyperLink = adLongVarWChar
Comentario anotado. Solo siguiendo el comentario de Zamir. –
Sólo una nota muy tardía sobre el hecho de que si desea crear una columna de Autonumérico debe establecer el valor 'AutoIncrement' en verdadero. Esto sucede después de crear el catálogo, donde establece el 'ParentCatalog' para la columna como su catálogo, luego establece las propiedades de la columna' 'AutoIncrement"]. Value' en 'true' –
- 1. Crear una base de datos mediante programación en SQL Server
- 2. Cómo crear mediante programación un Java ResultSet a partir de datos personalizados sin base de datos
- 3. ¿Equivalente basado en web de Microsoft Access?
- 4. Scope_Identity() en Microsoft Access
- 5. Crear base de datos SQLCE programación
- 6. Consultar base de datos MDB de Microsoft Access utilizando LINQ y C#
- 7. ¿Cómo usar la base de datos SQLite desde MS Access?
- 8. ¿Cómo creo una base de datos Microsoft Jet (Access) sin un ensamblado de interoperabilidad?
- 9. Cómo copia de seguridad de base de datos SQL mediante programación en C#
- 10. Edición de documentos de Microsoft Word mediante programación
- 11. ¿Cómo puedo crear una cadena en C# mediante programación?
- 12. Cómo agregar/quitar la referencia mediante programación?
- 13. mediante programación en C#
- 14. Conéctese a la base de datos de Microsoft Access desde XCode
- 15. Importación de un volcado de base de datos (mysql) mediante programación mediante Java
- 16. ¿Cómo crear subdominios para IIS7 mediante programación?
- 17. base de datos Access en Android
- 18. Crear diagrama de flujo mediante programación
- 19. ¿Cómo se leen los datos de los archivos de base de datos .accdb de Microsoft Access en R?
- 20. ¿Cómo validar el esquema de la base de datos mediante programación en hibernación con anotaciones?
- 21. crear mediante programación un UILabel
- 22. crear una carpeta mediante programación en Xcode - C Objetivo
- 23. Completar una base de datos de MS Access en Linux
- 24. Cómo crear URLs mediante programación con AngularJS
- 25. ms-access: hacer algo en la base de datos open
- 26. Conexión de una base de datos Microsoft Access para Java utilizando JDBC y compilar
- 27. Insertar fecha/hora en la base de datos de Access
- 28. Separación de etiqueta/Texbox en formularios de Microsoft Access 2007
- 29. Microsoft Access - Caso de consulta
- 30. Crear mediante programación HTML5 Canvas
¿Tiene que ser el acceso o está buscando un archivo base de datos basada en solución para almacenar datos? SQLite es agradable y portátil si eso es todo lo que necesitas. – jlafay
Sí, ahora estoy usando SQLite en Android. –