MySQL Function - Возвращаемое значение через ODBC - PullRequest
0 голосов
/ 07 декабря 2010

В приложении MS Access 2007 мне нужно сгенерировать имя документа [Date]. [SequenceNumber], например, 2010-12-07.013, где каждый день SequenceNumber сбрасывается в 1.

.целостность данных, я хотел бы создать функцию в MySQL, которая возвращает порядковый номер.Я установил таблицу 'sequence':

CREATE TABLE `doc_sequence_number` (
  `SequenceDate` date NOT NULL,
  `SequenceNumber` int(11) NOT NULL,
  `ts` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`SequenceDate`,`SequenceNumber`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

Функция MySQL должна создать новую запись, используя дату сервера и порядковый номер, увеличенные на 1, и вернуть поля SequenceDate и SequenceNumber.

  1. Может кто-нибудь предложить, как должна быть написана такая функция (это моя первая функция MySQL).

  2. Как я могу вызвать и получить возвращаемое значение(s) через ODBC такой функции, используя VBA?

Поскольку это ново для меня, я был бы признателен за любые предложения о том, как этого добиться.MTIA.

1 Ответ

1 голос
/ 07 декабря 2010

У меня нет большого опыта работы с MySql, но если бы я делал это на MSSQL, я бы искал таблицу с обычным идентификатором автоматического увеличения.Эта таблица затем очищает свои записи и сбрасывает последовательность на 1 каждый день.Затем я настроил бы хранимую процедуру для вставки записи в эту временную таблицу и считывания идентификатора.Добавьте это к дате сервера, и это ваше имя файла.

Что касается возврата значений в VBA, взгляните на эту ссылку о MSSQL, они должны быть довольно похожи

http://bytes.com/topic/access/answers/205120-get-stored-procedure-output-value-back-vba

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...