2010-05-19 1 views
1

У меня есть приложение, которое использует базу данных доступа 2000, находящуюся в настоящее время в дистрибутиве.Обновление базы данных 2000 доступа через код в VB6

Мне нужно обновить один из наборов записей дополнительными полями на компьютерах моих клиентов.
Мои данные управляют работой, так как я их установил для подключения в формате доступа 2000. Но, когда я пытаюсь открыть базу данных в коде, я получаю непризнанную ошибку формата данных.

Каков наилучший способ заменить или добавить в базу данных на своих машинах?

+0

Hi Mark - Трудно сказать, не видя кода, который вы используете для подключения к базе данных, и было бы полезно узнать, какие именно элементы управления данными вы используете. :-) –

+0

Вы хотите изменить структуру таблиц? Мне показалось, что изменение вашего набора записей будет означать не что иное, как изменение кода. Учитывая тег VB6, я предполагаю, что ваш внешний интерфейс - VB6, а не Access, поэтому вы изменили бы свое приложение и распространили его на него. –

ответ

0

Возможно обновление базы данных Access с использованием VBScript, ADO и DDL.

strCon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Example.mdb;" _ 
    & "Jet OLEDB:Database Password=pass;" 

Set cn=CreateObject("ADODB.Connection") 
cn.Open strCon 

strSQL="ALTER TABLE Example ADD COLUMN Example Text (20)" 
cn.Execute strSQL 

Дополнительные соединения строк: www.connectionstrings.com

0

Я предпочитаю с помощью коллекции DAO для обновления BE схемы базы данных, поскольку это дает вам гораздо больше контроля над тем, что вы можете сделать. Например, вы можете легко удалить или создать таблицы, записи, индексы и отношения. См. TempTables.MDB page на моем веб-сайте, который иллюстрирует использование временного MDB в вашем приложении и содержит пример кода, чтобы вы начали.

+0

Преимущество VBScript в том, что он очень мал и легко переносится (его можно даже вырезать и вставлять), можно быстро записать и будет работать на сайте, на котором не установлен Access, только время выполнения. Вы можете использовать DAO с VBScipt, если хотите. – Fionnuala

+0

Я бы предпочел, чтобы код находился внутри приложения, а не в отдельном файле. Я также предпочитаю использовать DAO, поскольку он имеет больший контроль над файлом базы данных Access. Хотя это вряд ли имеет значение для этого конкретного изменения просто добавления некоторых полей в таблицу. –

+0

Не установлено ли DAO с Jet 4 на всех копиях Windows? Таким образом, не так ли вы можете использовать DAO в vbScript? –