"Çok amaçlı konsol" ile ne demek istediğinizi bilmiyorum, ama belki de Access'in içinde ihtiyaçlarınızı karşılayacak Acil Pencere var. Ana Erişim penceresinden klavyedeki Ctrl-G tuşlarına basarsanız, bu sizi VBE'deki Acil Pencereye götürür ve orada yazabilirsiniz:
CurrentDB.Execute "CREATE TABLE Foo (Foo_Id int NOT NULL, Name varchar(255) NOT NULL, CONSTRAINT pk_FooID PRIMARY KEY (Foo_Id,Name))"
Tek satırlı bir arayüzdür, yani SQL biçimlendirmesi yoktur, ancak SQL'i yürütecektir.
CurrentDB'yi yürütme nesneniz olarak kullanmanın sorunu, onu her çağırdığınızda yeni bir veritabanı nesnesi döndürmesidir (tüm koleksiyonlarının güncel olmasını sağlamak için). Bir alternatif olacaktır:
DBEngine(0)(0).Execute "CREATE TABLE Foo (Foo_Id int NOT NULL, Name varchar(255) NOT NULL, CONSTRAINT pk_FooID PRIMARY KEY (Foo_Id,Name))"
DBEngine (0) (0) daima aynı nesneyi döndürdüğü için, aşağıdaki gibi şeyleri kontrol edebilirsiniz:
DBEngine(0)(0).RecordsAffected
Bununla ilgili "sorun", veritabanının koleksiyonlarını değiştirirseniz, kullanmadan önce yenilemeyi hatırlamanız gerekir. Örneğin, bir tablo ekler veya silerseniz, TableDefs koleksiyonunu güncellemek için koleksiyona yenilemeniz gerekir:
DBEngine(0)(0).TableDefs.Refresh
Başka bir alternatif, tüm uygulamalarımda yaptığım gibi önbelleğe alınmış bir veritabanı nesnesi kullanmak olacaktır, ancak koleksiyonların yenileme sorununu engellemez, ancak yazmayı kolaylaştırır (DBEngine (0) (0) 'ı yazmayı buluyorum). oldukça hata eğilimli ve dbLocal işlevimi kullanmak çok daha kolay buluyorum).