CREATEDEFINER=`root`@`%`PROCEDURE`search_user_word27`(INengVARCHAR(50),INuser_id0VARCHAR(64))BEGINDROPTABLEIFEXISTStttt;CREATETEMPORARYTABLEtttt(engVARCHAR(50)PRIMARYKEY,...
CREATE DEFINER=`root`@`%` PROCEDURE `search_user_word27`(IN eng VARCHAR(50), IN user_id0 VARCHAR(64))
BEGIN
DROP TABLE IF EXISTS tttt;
CREATE TEMPORARY TABLE tttt(
eng VARCHAR(50) PRIMARY KEY,
chn VARCHAR(255),
st INT DEFAULT 0
);
INSERT INTO tttt(eng, chn) SELECT english,chinese FROM jef_word WHERE english LIKE CONCAT('%',eng,'%');
UPDATE tttt SET tttt.st =1 WHERE (tttt.eng=jef.jef_user_word.english) AND (jef_user_word.user_id=user_id0) AND (jef_user_word.status=1);
UPDATE tttt SET tttt.st =-1 WHERE ((tttt.eng=jef.jef_user_word.english) AND (jef_user_word.user_id=user_id0) AND (jef_user_word.status=-1));
SELECT eng,chn,st FROM tttt;
END;
写了一个存储过程,搜索某个单词,同时返回这个用户对这个单词的状态。
到下面Update的时候,报错找不到列名jef_user_word.english。
但这个列名真的存在我发誓,我都能用这个列名select出数据来,就是加了where以后就不识别列名了。
求大神解决,急啊就快交作业了,在线等
展开