在mysql5.1创建function时,总是报下面的错误

#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ” at line 4

检查很多遍都没发现语法错误,苦恼很久。

后上网查到,是因为mysql分隔符的问题,默认是以;作为分隔符,而function或者procedure里面很多时候都要用分号,所以造成这个问题。

解决方法是用DELIMITER //预先定义分隔符,这样就解决了这个问题。存档以防将来之需。

如下是创建随机字符串的function

DELIMITER //

CREATE FUNCTION `rand_string`(n INT) RETURNS varchar(255) CHARSET utf8

BEGIN

DECLARE chars_str varchar(100) DEFAULT ‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789’;

DECLARE return_str varchar(255) DEFAULT ”;

DECLARE i INT DEFAULT 0;

WHILE i < n DO

SET return_str = concat(return_str,substring(chars_str , FLOOR(1 + RAND()*62 ),1));

SET i = i +1;

END WHILE;

RETURN return_str;

END; //

mysql function 1064_mysql 创建 function 错误 1064解决方案相关推荐

  1. mysql导入sql抱错1064_mysql导入数据库错误#1064提示解决方法

    文章总结了在mysql导入数据库时出现错误#1064 You have an error in your SQL syntax提示,我们这和数据库没什么关系大多是sql语句问题,或是数据库版本不兼容的 ...

  2. php1064,PHP创建表错误1064

    我试图在mySQL中创建一个表.这是我下面的php页面,当我运行页面时没有错误但是表格不在mySQL中,当我在mySQL中测试代码时我得到了错误 #1064 – You have an error i ...

  3. python重现 mysql server has gone away错误以及解决方案

    文章目录 一.前言 二.了解wait_timeout 和interactive_timeout 两个参数 1.命令行操作 2.wait_time 设置失效问题 3.参考手册概念,解释两个参数 4.那么 ...

  4. mysql创建函数报1064错误的解决方案

    创建function时,总是报下面的错误.可是检查过,没有什么语法问题.其实有些是分隔符引起的. #1064 – You have an error in your SQL syntax; check ...

  5. mysql创建数据库1064_Mysql创建表过程中报1064错误

    Mysql创建表过程中报1064错误 发布时间:2020-06-18 06:23:08 来源:51CTO 阅读:7528 作者:白羊IT 我在自己搭建的mysql服务中,在使用create table ...

  6. mysql 5.0创建函数_MySQL5.0中的Function和Procedure

    创建函数(Function) 创建: mysql> CREATE FUNCTION MyFunc (s CHAR(20)) RETURNS CHAR(50) RETURN CONCAT ('He ...

  7. mysql创建表格显示1064错误_尝试创建表时出现错误1064(Error 1064 when trying to create a table)...

    尝试创建表时出现错误1064(Error 1064 when trying to create a table) 这是代码: create table `team`.`User`( `UserID` ...

  8. 解决MySQL 5.6版的Function 'innodb' already exists错误

    解决MySQL 5.6版的Function 'innodb' already exists错误 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs MySQL ...

  9. mysql 载入主体时出错_mysql遇到load data导入文件数据出现1290错误的解决方案

    错误出现情景 在cmd中使用mysql命令,学生信息表添加数据.使用load data方式简单批量导入数据. 准备好文本数据: xueshengxinxi.txt 文件  数据之间以tab键进行分割 ...

最新文章

  1. 2016BAT+华为+滴滴+搜狗Android开发岗面试问题整理
  2. UITabBarController+UINavigationController+UIToolBar
  3. 在IIS上搭建WebSocket服务器(三)
  4. C#委托与事件学习笔记
  5. Lesson 16.3 卷积操作
  6. 数跑科技联合阿里云创造基于云原生的无边界数字新体验
  7. 【Linux命令大全】
  8. MySQL大表优化技术要点科普
  9. 他不怕被拒绝_不怕被拒绝,这几大星座男追人时最有耐心
  10. java面试题36 已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的? ( )
  11. Spring事务管理全面分析
  12. 快速破解IntelliJ IDEA
  13. 计算机网络实习个人总结,(实习报告)计算机网络实训个人小结
  14. 计算理财产品收益的JS代码
  15. 强烈推荐这些值得下载的神仙工具,每一个都让人惊喜
  16. 安卓投屏大师_还不会把手机投屏到电脑?教你四种方法,柯达带你直播玩的更溜...
  17. word中图片排版问题
  18. mysql select 反选_checkbox的全选与反选
  19. 加减乘除在java中表示_java加减乘除是什么类
  20. Spring注解大全(史上最全,字母编号,有实例)

热门文章

  1. informatica 学习日记整理(转)
  2. 求职面试:怎样克服面试紧张
  3. js、jQuery 仿酷狗音乐
  4. EBS Concurrent Request Schedule Options -- fnd_conc_release_classes
  5. 【JNLP】什么是JNLP
  6. jnlp(Java网络加载协议)原来很简单
  7. 编程实践(Pandas)Task05
  8. Flowable—基本概念和重要名词解释
  9. 线程池有哪些状态?状态是如何转换的?
  10. 一篇读懂:Android/iOS手机如何通过音频接口(耳机孔)与外设通信