程序中插入错误。此插入添加不带UserId的所有列。
----------------------------------------------------------------------------------
-- Routine DDL
-- Note: comments before and after the routine body will not be stored by the server
-- --------------------------------------------------------------------------------
DELIMITER $$
DROP PROCEDURE IF EXISTS CreateTable $$
CREATE PROCEDURE `CreateTable`
(
md5 VARCHAR(255),table_name VARCHAR(255),CommentsId INT(11),
Parent VARCHAR(100), Content TEXT,UserId INT(11), Title VARCHAR(255),
Nick VARCHAR(20), IdLength INT(11), suffix INT(11)
)
BEGIN
DECLARE full_table_name varchar(255);
SET @SQL=CONCAT('SELECT COUNT(\'X\') INTO @COUNTER FROM INFORMATION_SCHEMA.COLUMNS ',
'WHERE TABLE_NAME like \'', table_name, '%\'');
PREPARE stmt FROM @SQL;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET full_table_name= table_name;
SET @SQL=CONCAT('CREATE TABLE IF NOT EXISTS ', full_table_name, ' LIKE CommentsPattern');
PREPARE stmt FROM @SQL;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @SQL=CONCAT('INSERT INTO ', full_table_name,'(md5,UserId, Parent, Content, CommentsId, Title, Nick,IdLength,suffix)',
'values(',UserId,',"',md5, '",', Parent, ',"', Content, '",',CommentsId,',"',Title,'","',Nick,'",', IdLength, ',',suffix, ')');
prepare stmt from @sql;
execute stmt;
deallocate prepare stmt;
END我想要添加这个值:
call CreateTable('dcf57shasdsd5723m','dcf',2,60201,'My article is',444,'New Title','Ethan',1,2);其中:
发布于 2012-08-02 08:41:03
在插入到您的顺序声明列: md5,UserId,父,.但是,在这些值中,md5和UserId值是交换的:',UserId,',‘',md5,’‘,’,‘
https://stackoverflow.com/questions/11773711
复制相似问题