Мой обычный процесс для вставки в одну таблицу, а затем получения идентификатора обратно, чтобы я мог вставить в другую таблицу, похож на MSSQL:
DECLARE @transactionKey uniqueidentifier
SET @transactionKey = NEWID()
INSERT INTO transactions(transactionKey, transactionDate, transactionAmount)
VALUES(@transactionKey, '#transactionDate#', '#transactionAmount#')
DECLARE @transactionID int
SELECT @transactionID = transactionID
FROM transactions
WHERE transactionKey = @transactionKey
INSERT INTO transactionItems(transactionID, itemID, itemAmount)
VALUES(@transactionID, '#itemID#', '#itemAmount#')
SELECT @transactionID as transactionID
Мой вопрос - 2 части. Во-первых, это лучший способ сделать это? Я читал, что есть шанс, что GUID изменится на меня, и я получаю недопустимый идентификатор GUID во второй таблице. Я предполагаю, что это очень мало, и я много лет занимаюсь этим по различным проектам и никогда не испытывал проблем.
Вторая часть моего вопроса - это что-то вроде этой работы в MySQL? Я начинаю работать над новым проектом с использованием MySQL, и я точно не знаю, как это сделать. Обычно я работал только в MSSQL в прошлом.
Я использую CF9 и MySQL в этом новом проекте.
Любая помощь по этому поводу была бы большой.
Спасибо заранее.