在使用MySQL
进行文件数据读取的时候,在终端敲入命令行1
mysql> LOAD DATA INFILE 'home/pinseng/mysql_learn/shiyanlou/sql6/in.txt' INTO TABLE employee;
会出现如下错误:1
ERROR 13 (HY000): Can't get stat of '/var/lib/mysql/home/pinseng/mysql_learn/shiyanlou/sql6/in.txt' (Errcode: 2)
正如下图所示:
数据读取Bug解决方法
解决方法如下:
仔细观察报错信息发现MySQL
的默认路径应该是/var/lib/mysql
,如果我们使用home/pinseng/mysql_learn/shiyanlou/sql6/in.txt
进行数据的读取最终得到的路径组合为/var/lib/mysql/home/pinseng/mysql_learn/shiyanlou/sql6/in.txt
显然MySQL
是没有办法读出来的。
通过在终端内输入:1
mv /home/pinseng/mysql_learn/shiyanlou/sql6/in.txt /var/lib/mysql/mysql_shiyan/
也就是将in.txt
文件移动到MySQL
的默认路径下,这时候再进行数据读入工作就可以正常进行了。在MySQL
中输入命令如下:1
mysql> LOAD DATA INFILE 'in.txt' INTO TABLE employee;
代码流程如下图:
附带输入文件的数据库DROP(删除)方法
此时如果想要删除mysql_shiyan
这个数据库,因为我们之前在/var/lib/mysql/mysql_shiyan/
路径下添加了一个文件,所以将导致数据库删除失败,如下图所示:
错误代码如下:1
ERROR 1010 (HY000): Error dropping database (can't rmdir './mysql_shiyan/', errno: 17)
此时,只要移除我们添加的in.txt
文件就可以成功完成数据库的删除了,结果如下:
原谅我截图粗糙了一点。。。