navicat for mysql里运行.sql 文件(txt)不成功 Unsuccessfully

两种方式建立.sql脚本,写着一样的内容,一种可以运行成功一种不可以,是怎么回事?

方式一:
新建txt,写入代码:
CREATE TABLE `ceshi` ( `类别` char(20), `理财平台` char(20));
再另存为"ceshi.sql",保存类型选择"所有文件",编码选择"UTF-8"。Navicat for mysql 里右击数据库,"运行sql文件",运行完报错:
“[Err] 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 'CREATE TABLE `ceshi` (
`类别` char(20) NOT NULL,
`理财平台` char(' at line 1
[Err] CREATE TABLE `ceshi` (
`类别` char(20) NOT NULL,
`理财平台` char(20) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
[Msg] Finished - Unsuccessfully ”

方式二:
Navicat for mysql 里右击某表,"转存sql文件"为"ceshi2.sql",再把里面内容替换为相同的语句"CREATE TABLE `ceshi` ( `类别` char(20), `理财平台` char(20));",这样再运行就可以了。。。

想知道第一种方式运行不对是什么原因,,,
或者说,怎么正确地把.txt 存储为 .sql ?总不能每次都把语句粘贴到导出来的模版文件里吧。。。

就是bom头的问题。

你的操作过程应该是:新建xx.txt文件、用txt编辑器打开、写入语句、另存为"utf-8"编码的xx.sql文件。问题就在于你是在txt编辑器里另存为uft8的,因为会在文件的最前面加上bom头(window自带编辑器中,如果把文件保存为utf8编码就会帮你加上BOM头。即在文件开始的地方插入三个不可见的字符0xEF/0xBB/0xBF,以告诉其他编辑器要用utf8编码来显示字符)。

去掉BOM头的方法:用UEstudio编辑器打开,另存为"utf-8 无BOM"编码的,就好了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-08-02
是不是你的txt编码的问题,看看设置成utf-8怎么样追问

编码就是选择的"UTF-8"呀~ 还试了下"UTF-8 无BOM"编码,也不行。。。ToT