c语言sscanf函数的用法是什么
272
2022-12-02
学习数据库系统概论的过程中可能遇到的问题
1.写SQL语句时语法没错误但是一直提示有错误
可能你的SQL语句中含有shift+空格键之后,输入的字符。
详细可看这篇文章:
DEFINER=`root`@`localhost` PROCEDURE `page_proc`(IN curp INT, IN per_page INT)BEGIN-- # DECLARE total_records, total_page, start INT;-- # 获取商品表总记录数 SELECT COUNT(*) INTO total_records FROM sh_goods;-- # IF per_page <= 1 THEN SET per_page = 3; END IF;-- # SET total_page = CEIL(total_records / per_page); -- 总页数-- # IF curp < 1 THEN SET curp = 1; ELSEIF curp > total_page THEN SET curp = total_page; END IF;-- # SET start = (curp - 1)* per_page; -- 记录的偏移量-- # SET @sql_stmt = CONCAT('SELECT * FROM sh_goods LIMIT ', start, '\,', per_page); -- \,表示转义, PREPARE paging FROM @sql_stmt; EXECUTE paging; DEALLOCATE PREPARE paging; # 第2步:获取分页的数据 # ① 定义变量-- DECLARE total_records, total_page, start INT; # ② 从指定的数据表中获取总记录数-- SELECT COUNT(*) INTO total_records FROM sh_goods; # ③ 判断per_page是否符合要求-- IF per_page <= 1 THEN SET per_page = 3;-- END IF; # ④ 根据total_records和per_page计算总页数-- SET total_page = CEIL(total_records / per_page); # ⑤ 判断curp是否符合要求-- IF curp < 1 THEN SET curp = 1;-- ELSEIF curp > total_page THEN SET curp = total_page;-- END IF; # ⑥ 计算记录的偏移量-- SET start = (curp - 1) * per_page; # ⑦ 根据分页获取数据-- SET @sql_stmt = CONCAT('SELECT * FROM sh_goods LIMIT ', start,'\,' , per_page);-- PREPARE paging FROM @sql_stmt;-- EXECUTE paging;-- DEALLOCATE PREPARE paging;END
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~