I want to programmatically create a new column in an MS Access table. I’ve tried many permutations of ALTER TABLE MyTable Add MyField DECIMAL (9,4) NULL; and got:
Syntax Error in Field Definition
I can easily create a number field that goes to a Double type, but I want decimal. I would very strongly prefer to do this in a single ALTER TABLE statement and not have to create a field and then alter it.
I am using Access 2003.
If you want to create a new column in an acces table, it is easy to use the DAO.tableDef object:
Of course you can further delete it.
You might have the posibility to do so with ADODB (or ADOX?) object, but as long as you are working on an mdb file, DAO is straight and efficient.
PS: after checking on some forums, it seems there is a bug with decimal fields and DAO. http://allenbrowne.com/bug-08.html. Advices are ‘go for double'(which is what I do usually to avoid any loosy issues related to decimal rounding) or use ‘implicite’ ADO to modify your database