首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >导入MySQL文件#1166时出现语法错误-列名不正确

导入MySQL文件#1166时出现语法错误-列名不正确
EN

Stack Overflow用户
提问于 2014-08-08 22:32:06
回答 3查看 2.1K关注 0票数 0

我正在尝试将一个Excel文件上传到MySQL数据库中。我在导入MySQL文件#1166时出现语法错误-列名不正确...

代码语言:javascript
运行
复制
CREATE TABLE IF NOT EXISTS  `myfarmer`.`ville` 
(    
     ` Évosges ` VARCHAR( 42 ) ,
     `1230` INT( 5 ) ,
     `45.958333` DECIMAL( 8, 6 ) ,
     `5.5` VARCHAR( 17 )
) ENGINE = MYISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
EN

回答 3

Stack Overflow用户

发布于 2014-08-08 22:38:03

列名开头不能有空格:

代码语言:javascript
运行
复制
MariaDB [test]> create table foo (` bar ` int);
ERROR 1166 (42000): Incorrect column name ' bar '
MariaDB [test]> create table foo (`bar` int);
Query OK, 0 rows affected (0.00 sec)

所以

代码语言:javascript
运行
复制
` Évosges ` VARCHAR( 42 ) ,

应该是

代码语言:javascript
运行
复制
`Évosges` VARCHAR( 42 ) ,
票数 0
EN

Stack Overflow用户

发布于 2014-08-08 22:38:22

你正在混合创建表格和插入到这里,我的朋友...

CREATE table创建一个具有明确结构的存储空间,而INSERT INTO将数据插入到表中。

您的两个语句应该类似于:

代码语言:javascript
运行
复制
CREATE TABLE IF NOT EXISTS myfarmer.cities (
    name VARCHAR(42), 
    something INT(5), 
    longitude DECIMAL(8,6), 
    lontitude DECIMAL(8,6), 
    somethingelse VARCHAR(17)
);

然后

代码语言:javascript
运行
复制
INSERT INTO myfarmer.cities VALUES('Évosges', 1230, 45.958333, 72.25122, 5.5);
票数 0
EN

Stack Overflow用户

发布于 2014-08-08 22:40:42

根据this的说法,“数据库、表和列的名称不能以空格字符结尾。”另外,我会删除Évosges中的起始空格,因为它似乎是错误的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25205893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档