Perl MySQL Храбрый! Помощь

Я новичок в программировании баз данных и пытаюсь запустить базовое приложение CRUD. Используя Cruddy! У меня есть очень ограниченное приложение, которое читает словарь данных и создает формы на основе каждой таблицы.

Поскольку несколько таблиц имеют обширные записи внешнего ключа, я хочу, чтобы мое приложение выполняло операции соединения, которые были бы необходимы для отображения каждого столбца внешнего ключа в виде записей, на которые ссылается ключ. Хреновый! утверждает, что имеет эту возможность - он использует CGI::AutoForm для создания формы. Чтобы заставить форму работать, вы должны предоставлять записи по столбцам в справочную таблицу ui_table_column.

Вместо того, чтобы писать операторы SQL для всех моих таблиц и связанных с ними столбцов, я пытаюсь правильно настроить процесс для одного столбца.

Из моего DDL для этой таблицы:

CONSTRAINT `fk_Holder_Sample1`
FOREIGN KEY (`sample_id`)
REFERENCES `sample` (`sample_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,

И мои попытки настроить записи AutoForm SQL:

INSERT INTO ui_table_column (
    table_name, field_name, appear_order, heading, searchable, updatable, insertable, input_control_type, multi_insert_delimiter,
    search_control_type, search_mult_select, use_data_dict, datatype, default_value, required, input_size, input_maxlength, brief_heading,
    alt_mask_field, mask_table_name, mask_field_name, id_field_name, no_cache, radio_checkbox_cols, field_group, element_attrs, help_summary)
VALUES (
    'SAMPLE', 'SAMPLE_ID', 10, 'ID', 'Y', 'N', 'N', 'TEXT', NULL,
    'SELECT', 4, 'Y', NULL, NULL, NULL, NULL, NULL, NULL,
    NULL, 'sample', 'name', 'sample_id', 'Y', NULL, NULL, NULL, NULL);

INSERT INTO ui_table_column (
    table_name, field_name, appear_order, heading, searchable, updatable, insertable, input_control_type, multi_insert_delimiter,
    search_control_type, search_mult_select, use_data_dict, datatype, default_value, required, input_size, input_maxlength, brief_heading,
    alt_mask_field, mask_table_name, mask_field_name, id_field_name, no_cache, radio_checkbox_cols, field_group, element_attrs, help_summary)
VALUES (
    'SAMPLE', 'SAMPLE_NAME', 20, 'Name', 'Y', 'Y', 'Y', 'TEXT', NULL,
    'MATCH TEXT', NULL, 'Y', NULL, NULL, NULL, NULL, NULL, 'Name',
    NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);

INSERT INTO ui_table_column (
    table_name, field_name, appear_order, heading, searchable, updatable, insertable, input_control_type, multi_insert_delimiter,
    search_control_type, search_mult_select, use_data_dict, datatype, default_value, required, input_size, input_maxlength, brief_heading,
    alt_mask_field, mask_table_name, mask_field_name, id_field_name, no_cache, radio_checkbox_cols, field_group, element_attrs, help_summary)
VALUES (
    'HOLDER', 'SAMPLE_ID', 30, 'sample', 'Y', 'Y', 'Y', 'SELECT', NULL,
    'SELECT', 4, 'Y', NULL, NULL, NULL, NULL, NULL, 'Sample',
    NULL, 'sample', 'NAME', 'SAMPLE_ID', 'Y', NULL, NULL, NULL, NULL);

Когда я обновляю страницу своего приложения (и просто обновляю браузер, и вызываю apachectl), изменений нет, то есть я все еще вижу идентификатор образца в виде поля на странице держателя.

Кто-нибудь добился успеха с этим или может посоветовать мне, что я делаю неправильно?


РЕДАКТИРОВАТЬ: молчание SO я считаю показательным, что эта конкретная структура не получила широкого распространения. Тогда я хотел бы немного раскрыть свой вопрос и спросить, какие решения вы использовали? На самом деле я экспериментирую с Catalyst:: Плагин::AutoCRUD.


person learner    schedule 18.05.2012    source источник


Ответы (2)


Отвечено после того, как учащийся завершил работу с другой структурой, но для дальнейшего использования эти поля должны быть в ВЕРХНЕМ РЕГИСТРЕ.

В приведенном выше примере первый и третий операторы вставки будут иметь: (alt_mask_field, mask_table_name, mask_field_name, id_field_name) = (NULL,'SAMPLE','NAME','SAMPLE_ID').

person Reed Sandberg    schedule 23.05.2012
comment
Спасибо за комментарий - я оставил его открытым, надеясь, что вы посоветуете. Я принял твой ответ. - person learner; 24.05.2012

Я закончил использовать модуль в своем редактировании. Завтра я отмечу это как закрытое.

person learner    schedule 20.05.2012