MySQL中默认的分号表示定界符,结束语句并执行代码。
如果RETURN语句结尾不写任何修饰符,MySQL会把下一行的“END”识别到RETURN语句中,所以再RETURN语句结尾要加分号作为断句。
因为默认分号断句并且执行代码,所以调用DELIMITER把执行代码的定界符修改成“//”,换言之老师的分号不是习惯多打了,是那处本来就需要断句。
所以,符合结构函数需要调用DELIMITER是因为断句。
这样子对吗?????????
如果RETURN语句结尾不写任何修饰符,MySQL会把下一行的“END”识别到RETURN语句中,所以再RETURN语句结尾要加分号作为断句。
因为默认分号断句并且执行代码,所以调用DELIMITER把执行代码的定界符修改成“//”,换言之老师的分号不是习惯多打了,是那处本来就需要断句。
所以,符合结构函数需要调用DELIMITER是因为断句。
这样子对吗?????????
2018-08-11
感觉修改定界符这里讲得太简单了 一句话就没了"因为MySQL中的分号是定界符 所以不存在返回的INT"
更深入的原因是什么?还有为什么上两节课的自定义函数又不用修改定界符呢???
更深入的原因是什么?还有为什么上两节课的自定义函数又不用修改定界符呢???
2018-08-11
老师讲得很好好详细,只是如果按照老师的排版和进度,做起笔记比较吃力.............................估计是要添加索引了.......
2018-08-07
子查询:
UPDATE tdb_goods SET goods_cate = (SELECT cate_id FROM tdb_goods_cates WHERE tdb_goods.goods_cate = cate_name)
添加外键约束:
ALTER TABLE tdb_goods ADD CONSTRAINT fk_tdb_goods_goods_cate FOREIGN KEY fk_tdb_goods_cates(goods_cate) REFERENCES tdb_goods_cates(cate_id) ON UPDATE CASCADE ON DELETE CASCADE
UPDATE tdb_goods SET goods_cate = (SELECT cate_id FROM tdb_goods_cates WHERE tdb_goods.goods_cate = cate_name)
添加外键约束:
ALTER TABLE tdb_goods ADD CONSTRAINT fk_tdb_goods_goods_cate FOREIGN KEY fk_tdb_goods_cates(goods_cate) REFERENCES tdb_goods_cates(cate_id) ON UPDATE CASCADE ON DELETE CASCADE