Задавайте вопросы, мы ответим
Вы не зашли.
Приветствую
Вот написал код в соответствии с примером туториала, но он не работает при вызове
call userdb.add('login','path','name','sdesc','catheg')
точнее работает только до создания таблицы, а уже вставку не делает Выбрасывает
#42S22 Unknown 'column upload_file_save_path' in the 'field list'
вот код
CREATE PROCEDURE userdb.add( IN loginp varchar(20), IN upload_file_save_pathp varchar(127), IN upload_file_namep varchar(50), IN upload_file_descp varchar(127), IN upload_file_cathegoryp varchar(20) ) BEGIN set @sql=concat('CREATE TABLE IF NOT EXISTS userdb.',loginp,'( upload_file_save_path varchar(127), upload_file_name varchar(50) , upload_file_desc varchar(127) , upload_file_cathegory varchar(20) , upload_date date , id int NOT NULL, PRIMARY KEY (id)) TYPE = MyISAM ROW_FORMAT =DEFAULT'); PREPARE s1 from @sql; EXECUTE s1; DEALLOCATE PREPARE s1; set @sql2=concat( 'INSERT INTO userdb.',loginp,'(',upload_file_save_path,',',upload_file_name,',',upload_file_desc,',',upload_file_cathegory,',',upload_date,',',id,') VALUES("',upload_file_save_pathp,'","',upload_file_namep,'","',upload_file_descp,'","',upload_file_cathegoryp,'",',CURRENT_DATE,',1);'); PREPARE s2 from @sql2; EXECUTE s2; DEALLOCATE PREPARE s2; END
MySQL 5.1.39
Отредактированно mysqluser (03.05.2010 06:50:42)
Неактивен
Скорее всего проблема в том что в INSERT INTO tablename (...fields...) вы передаете значения переменных.
Попробуйте так:
Неактивен
Проблема в опечатке при создании таблицы
Неактивен