永发信息网

MySQL存储过程找不到列名,列名确实存在

答案:3  悬赏:10  手机版
解决时间 2021-03-18 18:47
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以后就不识别列名了。

求大神解决,急啊就快交作业了,在线等
最佳答案
jef_user_word.english是列名?为什么要带个点呢?好吧!那是你的自由...

报错可能是因为带点的列名造成的语法报错。
要这样写 `jef_user_word.english` 就可以了。
全部回答
alter table abc change num num int primary key auto_increment 前提是你的表中不能存在主键,否则请使用: alter table abc change num num int auto_increment 一般情况下增长都是主键
UPDATe 语句汇总用到了2个表tttt,jef 但这 2个表没有关联 要是用 UPDATE tttt SET tttt.st =1 from jef_user_word,tttt,jef WHERe (tttt.eng=jef.jef_user_word.english) AND (jef_user_word.user_id=user_id0) AND (jef_user_word.status=1);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
索泰1060 6g什么系列好
支补寨地址在哪,我要去那里办事
东风雪铁龙c5车坐垫加热开关是哪个?
单身求一个比较开放的女生QQ聊天
dnf男气功带什么史诗套好
山东藤县属于哪个市
内陆湖与内流湖是一回事吗
请问UG CAM中加工时粗加工、半精加工和精加工
旅客可以托运2瓶酒吗?
上海造币厂的朋友您好,即将签约中国印钞造币
工商行政管理专业,中专,可以报考造价员吗?
有没有无低押贷款的???先息后本的
求通缉令(刺客联盟)2的下载地址 不要什么印
长春市永春派出所这个地址在什么地方,我要处
请问商场里的“积分卡”是什么意思?有什么用
推荐资讯
没有查询到您的已发卡未领卡信息!这代表什么
聚兴美业化妆品有限公司地址在什么地方,想过
如购买的物品是500元但实际付450元供应商优惠
集装箱车上岗资格证哪考
男人不能对女人太好 无论你是怎样深爱着你的
旅游景区如何怎样才能增加客流量呢?
记得邓丽君演唱会时候问一个男的有没有结婚
qq空间里的摩天大楼游戏,
有和河南男生结婚的湖南妹子吗
清代粉彩的碗拍卖值多少钱?民窑的
顺产后宫颈糜烂怎么办
什么是经济规律
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?