In this example, ADOX uses autonumber to create an access table with a primary key.
ADOX.Catalog cat = new ADOX.Catalog(); ADOX.Table table = new ADOX.Table(); ADOX.Key tableKey = new Key(); ADOX.Column col = new Column(); String connString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\test.accdb; Jet OLEDB:Database Password="; cat.Create(ConnString); // Define column with AutoIncrement features col.Name = "ID"; col.Type = ADOX.DataTypeEnum.adInteger; col.ParentCatalog = cat; col.Properties["AutoIncrement"].Value = true; table.Name = "Security"; table.Columns.Append(col); // default data type is text[255] table.Columns.Append("Username", ADOX.DataTypeEnum.adVarWChar, 255); table.Columns.Append("Password", ADOX.DataTypeEnum.adVarWChar, 255); table.Columns.Append("Engineer", ADOX.DataTypeEnum.adBoolean); table.Columns.Append("Default", ADOX.DataTypeEnum.adBoolean); // Set ID as primary key tableKey.Name = "Primary Key"; tableKey.Columns.Append("ID"); tableKey.Type = KeyTypeEnum.adKeyPrimary; // Add table to database cat.Tables.Append(table);
source share