mysql导入.sql文件的问题

将一个.sql文件编辑,文本中最后加入下面这段代码(部分代码)后,导入这个sql文件就会报错(这段新加代码未能导入)
原因是什么?还有就是应该如何解决这个问题。多谢了!

 #
# Function "fun_getChildList"
#

DROP FUNCTION IF EXISTS `fun_getChildList`;
CREATE FUNCTION `fun_getChildList`(`type` int,`areaid` int,`orgid` int) RETURNS varchar(1000) CHARSET utf8
BEGIN


    DECLARE sTemp VARCHAR(1000);
    DECLARE xh VARCHAR(50);
    DECLARE areacode VARCHAR(100);
    DECLARE cunt INT;

    SELECT CONCAT(ORGXH,'%') INTO xh from ss_organization where ID_ORG=orgid;
    IF type=1 THEN
        set sTemp='$';
        SELECT CONCAT(sTemp,',',GROUP_CONCAT(ID_ORG)) INTO sTemp from ss_organization where ORGXH like xh;
    ELSEIF type=0 THEN
        SELECT COUNT(1) into cunt FROM ss_organization where ss_organization.ID_ORG=orgid and ss_organization.ORG_DISTRPARENTID=areaid;
        if cunt>0 then
        select area_code INTO areacode from bs_distrarea_info where area_id=areaid;
        SELECT IFNULL(GROUP_CONCAT(ID_ORG),'0') into sTemp from ss_organization 
        LEFT JOIN  bs_distrarea_info ON ORG_DISTRPARENTID=area_id where area_code like CONCAT(areacode,'%') and area_id<>areaid;
        SELECT CONCAT(sTemp,',',IFNULL(GROUP_CONCAT(ID_ORG),'0')) INTO sTemp from ss_organization where ORGXH like xh;
        ELSEIF cunt=0 THEN
        SELECT IFNULL(GROUP_CONCAT(ID_ORG),'0') into sTemp from ss_organization where ss_organization.ORG_DISTRPARENTID=areaid;
        end IF;
        SET sTemp=CONCAT('$',',',sTemp);
    END IF;
    RETURN sTemp;
END;

#
# Function "fun_getOrgLine"
#

DROP FUNCTION IF EXISTS `fun_getOrgLine`;
CREATE FUNCTION `fun_getOrgLine`(`orgid` int) RETURNS varchar(1000) CHARSET utf8
BEGIN

    DECLARE sTemp VARCHAR(1000);
    DECLARE sTempChd VARCHAR(1000);
    DECLARE grade INT;
    DECLARE enterprisename VARCHAR(100);
    DECLARE st INT;

    SELECT ss_organization.ORG_GRADE,ss_organization.ENTERPRISE_NAME into grade,enterprisename from ss_organization where ss_organization.ID_ORG=orgid;
    SET st=1;
     WHILE grade<=st DO
        set st=st+1;
     END WHILE;

    RETURN grade;
END;

#
# Function "getChildLst"
#

DROP FUNCTION IF EXISTS `getChildLst`;
CREATE FUNCTION `getChildLst`(rootId INT) RETURNS varchar(1000) CHARSET utf8
BEGIN
     DECLARE sTemp VARCHAR(1000);
       DECLARE sTempChd VARCHAR(1000);

       SET sTemp = '$';
       SET sTempChd =cast(rootId as CHAR);

       WHILE sTempChd is not null DO
         SET sTemp = concat(sTemp,',',sTempChd);
         SELECT group_concat(o.ID_ORG) INTO sTempChd FROM ss_organization o where FIND_IN_SET(o.ORG_PARENT_ID,sTempChd)>0;
       END WHILE;
    RETURN sTemp;
END;



4个回答

如果你的函数本身没有语病,那么很可能是识别结尾符有问题,因为mysql默认;结尾,所以你直接这样写会导致执行失败,你在这些函数执行前加上
DELIMITER $

使用完后,也即在没有存储过程或者函数的时候再还原回来

DELIMITER ;


你这是存储过程,单独执行就行

这个是存储过程,你要加一些信息,看是执行什么语句的时候出错了。

glzmzd
glzmzd 每个部分单独用sql编辑器跑了一次。。都没有问题。。mysqlfront的sql编辑器好像没法一次运行太多条sql语句,应该再怎么测试好?。。
大约 4 年之前 回复
glzmzd
glzmzd 每个部分单独用sql编辑器跑了一次。。都没有问题。。mysqlfront的sql编辑器好像没法一次运行太多条sql语句,应该再怎么测试好?。。
大约 4 年之前 回复
glzmzd
glzmzd 好主意。。那我应该怎么加能够在出错的时候告诉我哪里出错的信息?
大约 4 年之前 回复

一.MySQL的命令行模式的设置:

桌面->我的电脑->属性->环境变量->新建->

PATH=“;path\MySQL\bin;”其中path为MySQL的安装路径。

二.简单的介绍一下命令行进入MySQL的方法:

1.C:>MySQL -h hostname -u username -p

按ENTER键,等待然后输入密码。这里hostname为服务器的名称,如l......
答案就在这里:关于mysql导入sql文件的问题
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mysql导入sql文件的相关问题
mysql导入sql文件的相关问题 最近再用navicat导入sql文件的时候出现了一系列沙雕问题,还是学艺不精。 先是导入时候显示Err1046 然后发现其实是sql文件的名和你选择的数据库的名不同。 这点要注意,sql文件和数据库的名一定是相同的 之后就解决了问题。 如果导入sql文件之后没有表,把数据库关闭再开启就好了。 ...
急!!! mysql导入sql文件问题
mysql版本4.1.x,数据库存储数据为utf-8格式,用phpmyadmin将数据导出为utf-8格式的sql文件,rnrn再用phpmyadmin import sql file(选择utf-8格式的文件),由于包含中文字符,在insert into语句中会提示语法错误,比如insert into table(`field1`) values('$value'),$value中包含utf-8的中文字,phpmyadmin在import会转码,就可能出现单引号字符,故而报错。rnrn怎么解决呀!rnrn
MySQL导入大SQL文件问题
导入方法: 1.通过phpmyadmin,有内存等的限制; 2.通过Navicat 运行sql,效率低; 3.通过source命令导入,效率高;   这里选用第三种方法,命令:source  sql文件的绝对路径 可能遇到的问题: 1.mysql链接超时 运行命令:show global variables  like '%timeout'; 查看运行结果中wait_timeout的...
如何将sql文件导入mysql
第一步:打在开始界面中找到mysql第二步:双击打开mysql软件。,并输入密码。第三步:如果sql文件的内容中有创建数据库的语句或者你想将表存放在你已有的数据库,在这里就不用创建数据库。第四步:输入“show databases;”就能看到自己创建的数据库。第五步:输入“use 数据库名”,开始使用这个数据库。第六步:开始导入sql文件,输入“source sql文件的路径”(注意你的文件路径要...
Mysql导入sql文件乱码问题
今天遇到一个把sql文件导入到mysql中,中文全部变成乱码的问题。找度娘找答案,基本上说的都是编码的问题,可是我看我要导入的sql文件的编码设置的都是utf-8,数据库设置的也都是utf-8,乱码依旧出现。最后只能用最笨的方法,复制sql文件中的sql语句在mysql中执行,发现导出的sql文件中,有些字段的默认中文值变成了乱码,这个应该是导出文件时候设置的有问题。所以,最笨的方法就是复制sql文
MYSQL 导出与导入sql文件
1. 将数据库导出至sql文件 打开命令行 进入到mysql安装目录下的bin文件夹下 输入以下命令 mysqldump -u 用户名 -p 数据库名 > 文件名.sql 该sql文件会导出至/bin目录下 2. 将sql文件导入至数据库同样在bin目录下的命令行中,输入:注意: 先将要导入的sql文件放置在/bin 目录下mysql -u 用户名 -p 数据库名 < 文件名.sql前提必须已经创建
向mysql导入.sql文件
1.先登陆mysql数据库 mysql -u root -p 2.创建.sql数据的同名的数据库,create database 数据库名; 3.进入数据库,use 数据库名; 4.导入数据库文件; source /home/sch/.../数据库名.sql; 红色部分为数据库文件.sql的绝对路径;
如何将.sql文件导入MySQL
第一步:                第二步:              键入source 目录               source E:\Perl_Practice\Code\organized\ch03\sql.sql
MySql导入大sql文件
最简单的是直接使用mysql命令控制台,也是最快的. mysql&gt;source F:\insert.sql 但是这里有个情况,就是mysql默认设置的max_allowed_packet是1M.也就是说传输最多字节就是1048576 那么如果sql文件比较大,超出了1M,则会报错:MySQL server has gone away 这里需要将接受数据设置大些: SET GL...
MySQL导入sql文件出错
1.下载别人的工程,带有.sql文件的,用Navicat选择运行sql文件,报错。 2.用notepad++编辑打开,发现头部是有信息的。具体如图 3.用phpmyadmin导入同样出错,百度出方法,删除头部信息即可。 4.注意,只能删除头部信息,紧接着的空行不可以删掉。 5.再次用phpmyadmin导入即可 点这里
Mysql导入.sql文件出错
在CSDN下载了一个人事管理系统,用mysql 5.6导入项目的.sql文件出错,这该如何处理哦?rn[img=https://img-bbs.csdn.net/upload/201504/05/1428213885_100441.jpg][/img]
把.sql文件导入mysql
本人想实现把.sql文件导入mysql中,不知道如何实现rnrn下面是我在网上看的别人给的建议,可我试了,不知道怎么没有rn忘大家给予指点rn数据库名:testrnsql文件名:test.sqlrnrn方法一rnmysql test
MySql 如何导入sql文件
说明:这里只演示如何通过sql文件导入数据库,至于数据库如何安装,这里不做介绍。 MySQL要导入sql文件,首先需要登录到mysql数据库: 输入 mysql -u root -p [password] 你要知道需要导入的数据库名称,并创建这个数据库: 使用 create database [your database name]来创建这个数据库: 你可以输入 [show databa
mysql导入sql文件乱码问题
1、mysql -uroot 2、use sydn 3、set names utf8; 4、source C:\Users\huangliangc\Desktop\sydn.sql
mysql导入sql文件出错!
ERROR 5 (HY000) at line 2: Out of memory (Needed 2457364 bytes)rn这个错误要怎么弄?
mysql导出导入sql文件
&gt;mysql -uroot -proot -hlocalhost tms &lt; e:\tms_produce.sql 将这个文件的数据加载到mysql数据库 &gt;mysqldump -uroot -proot -hlocalhost tms &gt; e:\temp.sql 将数据库的内容生成文件...
mysql 命令行导入sql文件
1. 说明 有时候,使用navicat为MySQL导入sql文件时,会出现一些错误而导致数据无法导入成功,这时我们可以采用命令行的方式导入数据。以windows环境为例。 2. 步骤 a.数据表 b. 以命令行的方式登入mysql b.选择数据库进行导入 windows,直接左键选中文件拖入cmd中,即可生成文件路径。 c.结果 ...
mysql导入一个sql文件
导入create.sql source  d:/create.sql   http://blog.csdn.net/qjyong/archive/2008/09/12/2916192.aspx  mysql ppt   java.util.Date和java.sql.Date的转换:  Date d=new Date();      String sd=d.toLocaleString...
mysql命令行导入sql文件
在 Windows 下使用 cmd 命令执行:    mysql –u用户名 –p密码 –D数据库&amp;lt;【sql脚本文件路径全名】    示例如下:mysql -uroot -p123456 -Dsakila&amp;lt;E:\开源源码\sakila-db\sakila-db\sakila-data.sql    但是有时候会出现“ERROR 1136 (21S01) at line 233: Col...
MySQL导入sql文件
MySQL导入sql文件
导入sql文件到mysql
把sql文件导入到mysql中的tang_poetry数据库: 在安装的mysql的bin目录下打开命令窗口 mysql -uroot -p123456 回车   123456为密码 use tang_poetry source f:\tang.poetry.sql          实测有效,自己摸了好多个error才实现的    如果你正要解决这个问题,根据你的密码路径改下即可,不
mysql导入sql文件异常
当数据量很大时,sql文件达到500M时,已经很难单纯的插入数据库, 因此通过mysql命令行导入最合适 windows下: 通过管理员运行cmd,切换mysql bin目录,执行 mysql -u hadoop -p 随后输入密码 use hadoop;#切换数据库 source d:/prpdagent_zyb.sql; 一般情况下会遇到错误,或者插入数据时会出现乱码,这时因为cmd窗口或者n...
Mysql导入sql文件
命令行导入: 在mysql的bin目录下打开cmd,执行下列命令: mysql -u root -p drop database garden; 删除原来的garden数据库 create database garden; 新建garden数据库 show databases; 显示当前有哪些数据库 use garden; 将garden设为当前数据库 source g...
mysql 导入.sql文件
1)登录mysql 2)source ***.sql/绝对路径/***.sql
mysql导入sql文件命令
需要将一个几十兆的数据导入到mysql中,一般方法有诸多限制。 直接在服务器中使用命令导入资源就可轻松绕过诸多限制。 1.登陆mysql mysql -u用户名 -p密码 如果mysql: command not found ,找到mysql安装目录/bin/ ,然后./mysql -u用户名 -p密码 2.删除数据库 mysql&amp;gt; drop database xxxx; 3....
SQL文件导入mysql
SQL文件导入mysql有两种方式: 1、先登录数据库再导入,通过source实现 #进入MySQL数据库控制台,如     mysql -uroot -proot mysql&amp;gt;use 数据库 #使用source命令后面加脚本文件      mysql&amp;gt;source d:/test.sql   2、cmd命令行直接导入 mysql -u用户名 -p密码 -D数据...
mysql如何导入sql文件
谢谢
mysql导入大sql文件
之前一直都是在线转移数据,或者直接考data目录,也有干过多个sql文件导入。最近接了个兼职,发了个sql文件,两百多兆。 phpmyadmin最多是只支持2m的,在网上看到一种方法,修改UploadDir参数
mysql及导入sql文件
命令格式:mysql -h主机地址 -u用户名 -p用户密码 use database(数据库名) source D:\mysql\my.sql
mysql 数据库sql文件导入
set MYSQL_PATH="C:\mysql\mysql-5.7.18-winx64_server" cd /d %MYSQL_PATH%\bin set "thispath=%~dp0" echo basemodel mysql -hlocalhost -uroot -p123456 -e "create database basemodel"; mysql -hlocalhost -u...
mysql 导入大sql文件
1.打开cmd 2.进入到MySQL的bin文件夹  (C:\software\phpStudy\phpStudy\MySQL\bin) 如果是在mamp下,则打开终端(Terminal),输入 /Applications/MAMP/Library/bin/mysql -uroot -p 3.输入命令:mysql -u root -p 4.输入密码:root(MySQL的密码
mysql linux下导入sql文件
1.上传脚本文件到linux 这里是把database.sql放到/tmp/下 2.登录mysql >mysql -u root -p >password: 3.导入脚本 mysql>use yourdatabasename; mysql>set names utf8; mysql>source /tmp/database.sql; 然后屏幕上就会不断的滚
mysql导入.sql文件
登录mysql,在cmd中-u userName -p passWord; use databaseName source d:/test.sql
mysql导入sql文件,cmd
Mysql 导入sql文件:1) 用管理员身份打开cmd,输入net startMySQL57(57为对应版本)启动服务;2) 进入MySQL安装bin目录3) mysql-u root –p,并输入密码4) 进入要导入文件的数据库(需要提前创建,或已有的数据库),USE 数据库名;5) 将需要导入的sql文件复制到bin目录下;6) source 文件名,即可。会看到Query OK, 0 ro...
mysql导入sql文件出错
用mysql SOURCE命令导入SQL文件,SOURCE D:/data.sql,有一个表的数据报这个错[code=html]rnERROR 1064 (42000): 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 ''\n娆㈣繋鍙傚姞 ' at line 1rn[/code]rn然后这个表的数据倒不进去,只有一个空表。我在网上搜了一下,在后面加了这句:rn--default-character-set=utf8,直接倒不了,报这个Failed to open file...rn我又用navicat倒,这个却能倒,并且报错的那个表的数据也都有。rn这么看来SQL文件时没有问题的,还是命令写的不对。rn请教高手,用Mysql命令的话 应该怎么写。rn
mysql导入sql文件
使用mysql query browser使用命令行工具 mysql query browser 选中数据库,new-->open script file,然后选择要导入的sql文件,运行 使用命令行 登录数据库use databasesource E:\xxx.sql
MySql工具sqlyog高版本导出sql文件导入低版本出现错误解决办法
当从mysql数据导出数据文件 .sql文件后,再导入时出现错误 There was error(s) while executing the queries .The query and the error message has been logged at:C:\Users\Administrator\AppData\Roaming\SQLyog\sqlyog.err.Please clic...
MySQL导入.sql文件及常用命令
MySQL导入.sql文件及常用命令
MySql导入.sql文件?
哈喽,大家好。rnme遇到个问题:本人现在想通过C#控制.cmd文件,.cmd文件中是一些 向MySql导入.sql脚本的语句,请问一下该怎么写呢?在网上查了一下,实验还没有成功,求助与大家了。
mysql导入sql文件,source命令
1. 首先查看原文件在电脑的位置 2. 在mysql命令行输入: source 文件所在路径
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池