2015-02-11 6 views
-1

Я попытался импортировать файл MySQL, который был экспортирован и предоставлен клиентом в формате sql. Когда я пытался импортировать, я получил следующее сообщение об ошибке:Ошибка в mysql при импорте

#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 'decimal(7,0) DEFAULT 0, 
    `black_or_african_american` decimal(7,0) DEFAULT 0, 
    ' at line 33 

мой запрос является:

 CREATE TABLE `ZipCodeTable` (
        `zip` int(5) NOT NULL, 
        `type` varchar(8) NOT NULL, 
        `primary_city` varchar(32) NOT NULL, 
        `acceptable_cities` varchar(2555) NOT NULL DEFAULT '', 
        `unacceptable_cities` varchar(255) NOT NULL DEFAULT '', 
        `state` char(2) NOT NULL, 
        `county` varchar(32) DEFAULT NULL, 
        `timezone` varchar(24) DEFAULT NULL, 
        `area_codes` varchar(12) DEFAULT NULL, 
        `latitude` decimal(7,4) DEFAULT 0, 
        `longitude` decimal(7,4) DEFAULT 0, 
        `precise_latitude` decimal(7,4) DEFAULT 0, 
        `precise_longitude` decimal(7,4) DEFAULT 0, 
        `latitude_min` decimal(7,4) DEFAULT 0, 
        `latitude_max` decimal(7,4) DEFAULT 0, 
        `longitude_min` decimal(7,4) DEFAULT 0, 
        `longitude_max` decimal(7,4) DEFAULT 0, 
        `world_region` varchar(32) DEFAULT NULL, 
        `country` varchar(32) DEFAULT '', 
        `decommissioned` int DEFAULT 0, 
        `estimated_population` decimal(7,0) DEFAULT 0, 
        `notes` varchar(255) DEFAULT NULL, 
        `area_land` decimal(10,0) DEFAULT 0, 
        `population_count_100` decimal(7,0) DEFAULT 0, 
        `housing_unit_count_100` decimal(7,0) DEFAULT 0, 
        `white` varchar(5) decimal(7,0) DEFAULT 0, 
        `black_or_african_american` decimal(7,0) DEFAULT 0, 
        `american_indian_or_alaskan_native` decimal(7,0) DEFAULT 0, 
        `asian`decimal(7,0) DEFAULT 0, 
        `native_hawaiian_and_other_pacific_islander` decimal(7,0) DEFAULT 0, 
        `other_race` decimal(7,0) DEFAULT 0, 
        `two_or_more_races`decimal(7,0) DEFAULT 0, 
        `total_male_population` decimal(7,0) DEFAULT 0, 
        `total_female_population` decimal(7,0) DEFAULT 0, 
        `pop_under_10` decimal(7,0) DEFAULT 0, 
        `pop_10_to_19` decimal(7,0) DEFAULT 0, 
        `pop_20_to_29` decimal(7,0) DEFAULT 0, 
        `pop_30_to_39` decimal(7,0) DEFAULT 0, 
        `pop_40_to_49` decimal(7,0) DEFAULT 0, 
        `pop_50_to_59` decimal(7,0) DEFAULT 0, 
        `pop_60_to_69` decimal(7,0) DEFAULT 0, 
        `pop_70_to_79` decimal(7,0) DEFAULT 0, 
        `pop_80_plus` decimal(7,0) DEFAULT 0, 
       ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

Я не знаю, чтобы определить ошибку .. Может кто-нибудь мне помочь ?? Заранее спасибо

ответ

4

В этой строке

`white` varchar(5) decimal(7,0) DEFAULT 0, 

вы пытаетесь определить два типа для одного столбца. Просто удалите его, и с вами все будет в порядке.

+0

Я удалил это. . Теперь я получаю эту ошибку # 1064 - У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с ним.) ENGINE = InnoDB DEFAULT CHARSET = utf8 'по строке 45 – viji

+0

спасибо, я понял. – viji

0

У вас есть 2 определения столбца для column white: white varchar(5) decimal(7,0) DEFAULT 0,

2

здесь, в этой строке

`white` varchar(5) decimal(7,0) DEFAULT 0 

записи либо VARCHAR (5) или Decimal (7,0)