Я использую Coldfusion8 и MySQL и пытаюсь вставить в таблицу.
Однако это не работает, независимо от того, использую ли я cfquery:
<cfquery datasource="dns" result="some">
INSERT INTO users(iln)
VALUES("1234567890123")
</cfquery>
<cfdump output="path.txt" var="#some#">
или хранимая процедура:
<cfstoredproc procedure="proc_insert_user" datasource="dns">
<cfprocparam type="In" cfsqltype="cf_sql_varchar" value="1234567890123" maxlength="13">
</cfstoredproc>
с процедурой внутри MySQL:
CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_insert_user`(IN `user_iln` VARCHAR(13))
LANGUAGE SQL
NOT DETERMINISTIC
MODIFIES SQL DATA
SQL SECURITY INVOKER
COMMENT ''
BEGIN
INSERT INTO users (iln)
VALUES(user_iln);
END
Если я запускаю процедуру изнутри MySQL, она работает. Однако из Coldfusion я не могу получить доступ к базе данных. Если я устанавливаю флаг до и после cfquery/storedProc, отображаются оба флага, поэтому я предполагаю, что ошибок нет (я их тоже не получаю)
Вопрос: мне не хватает некоторых настроек в MySQL/Coldfusion. Если да, то с чего начать поиск?
Спасибо за помощь!
EDIT:
Когда я пытаюсь вставить запись, как указано выше, идентификатор таблицы продолжает увеличиваться, но новая запись не отображается. Итак, идентификаторы создаются, но я не вижу никаких записей. Не уверен, что это поможет.
EDIT2:
я добавил параметр результатов в Cfquery. Если я сброшу результаты, я получу:
CACHED: false
EXECUTIONTIME: 60
GENERATED_KEY: 42
RECORDCOUNT: 1
SQL: INSERT INTO teilnehmer(iln)
VALUES("1234567891231")
result
доказывает, чтоinsert
был успешным, и присвоенное значение id=42. Это подтверждает подозрения @Barry. - person Leigh   schedule 04.06.2012