ODBC: когда лучше всего создавать мою базу данных? - PullRequest
0 голосов
/ 26 мая 2010

У меня есть программа для Windows, которая генерирует формы PGP, которые будут заполнены позже.

Эти формы PHP будут заполнять базу данных. Это очень похоже на MySql, но я не уверен, поэтому назовем его ODBC.

И, да, это должна быть программа для Windows.

Будут также формы PHP, которые запрашивают базу данных - проверяют, какие таблицы и поля она содержит, а затем генерируют формы, которые можно использовать для поиска в базе данных (например, он находит таблицу с полями "employee_name" и т. Д. И генерирует Форма для поиска по имени сотрудника.


Давайте назовем это время проектирования и время выполнения.

Во время разработки какой-либо менеджер или ИТ-специалист или аналогичные лица могут определить природу базы данных, и во время выполнения 1) работник ежедневно заполняет форму и 2) руководство может извлекать отчеты.

Вот мой вопрос: учитывая, что база данных определяется во время разработки (и заполняется во время выполнения), где и как это лучше всего сделать?

1 Я мог бы использовать интерфейс ODBC из программы Windows, но мне трудно найти что-то хорошее для работы с Delphi. Такие вещи, как ADO и firebird, как правило, ожидают, что у вас уже есть база данных и позволяют вам манипулировать ею, но я не могу найти пример кода о том, как создать базу данных и некоторые таблицы, так что ...
2 Я мог использовать команды DOS от Delphi в моей программе Windows. Я только что попробовал и получил ответ на MySql --version, но не уверен, что MySql и т. Д. Более интерактивны. То есть я могу использовать файл сценария или очень длинную команду stacked с точками с запятой и возвращать разделение? например, 'CREATE DATABASE db; CREATE TABLE t1; '
3) Поскольку наилучшим способом работы с базами данных, по-видимому, является PHP, возможно, моя программа для Windows могла бы выплевывать страницу PHP, которая при запуске в браузере создала бы базу данных.


Я пытался сделать это как можно проще, но, пожалуйста, не стесняйтесь задавать вопросы. Может быть так, что есть несколько допустимых способов, но, вероятно, есть одно «лучшее» решение с точки зрения простоты внедрения или обслуживания.


Лучший вариант 3. Что если пользователь позже захочет вернуться и программа Windows изменит форму ввода? Также необходимо обновить базу данных.

1 Ответ

0 голосов
/ 26 мая 2010

Создание базы данных обычно является задачей администратора базы данных. Если это не локальная база данных, может быть встроенная, пользователь должен знать, где и как создать базу данных на удаленном сервере, и он не может иметь никакого представления об этом. Где хранить файлы базы данных? Какие диски доступны? И может быть много других параметров (размер буфера памяти и т. Д.), Создаваемых пользователей и т. Д. Кроме того, вам необходимо повысить привилегии, чтобы иметь возможность создавать базу данных, а не то, что вы даете обычным пользователям или приложениям. Тем самым обычно вы просите администратора базы данных создать вашу базу данных / схему, он предоставит вам учетные данные, необходимые для подключения, а затем ваше приложение (или его настройка) создаст и инициализирует необходимые объекты (таблицы и т. Д.). Создание таблицы (и другого объекта) обычно так же просто, как выполнение операторов "CREATE TABLE ....". Просто помните, что SQL принимает только одну команду, если вам нужно запустить несколько команд, вы должны отправлять их одну за другой самостоятельно, хотя есть компоненты Delphi, которые могут разбивать скрипт на команды и запускать одну за другой.

...