Автор Тема: Области, общини, нас. места, ЕКАТТЕ  (Прочетена 21309 пъти)

nikolayivanovbg

  • Новаци
  • *
  • Публикации: 1
    • Профил
Re: Области, общини, нас. места, ЕКАТТЕ
« Отговор #15 -: Oct 12, 2011, 16:12 »
Похвален труд!

Само една молба, ако може.
Засяга самият .sql файл в архива - ако може "multi-insert"-a да е разделен на много редове, имам предвид всеки запис да е на отделен ред:
(..,..,..),
(..,..,..),
(..,..,..);

Пробвам вече 10 различни неща в UBUNTU-то и нито едно не успява да отвори файл с толкова дълги редове.
Всички умират  :(

Исках просто да погледна файла и имената на таблиците, например, преди да пусна заявката да вмъкне всичко в базата данни.
Исках да вмъквам в съществуваща база и не ми се правеше нова.
Активен

b2l

  • Напреднали
  • *****
  • Публикации: 4786
  • Distribution: MCC Interim
  • Window Manager: - // - // -
  • ...sometimes I feel like screaming... || RTFM!
    • Профил
    • WWW
Re: Области, общини, нас. места, ЕКАТТЕ
« Отговор #16 -: Oct 12, 2011, 16:14 »
vim?
Активен

"Човекът е въже, опънато между звяра и свръхчовека, въже над пропаст. Човекът е нещо, което трябва да бъде превъзмогнато." - Фр. Ницше

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Re: Области, общини, нас. места, ЕКАТТЕ
« Отговор #17 -: Oct 12, 2011, 17:38 »
Код
GeSHi (SQL):
  1. CREATE TABLE `country` (
  2.  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  3.  `name` char(25) NOT NULL,
  4.  PRIMARY KEY (`id`),
  5.  UNIQUE KEY `UQ_record` (`name`) USING BTREE
  6. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
  7.  
  8. CREATE TABLE `province` (
  9.  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  10.  `country_id` int(10) UNSIGNED DEFAULT NULL,
  11.  `name` char(25) NOT NULL,
  12.  `EKATTE` char(3) NOT NULL,
  13.  `EKATTE_code` char(5) NOT NULL,
  14.  PRIMARY KEY (`id`),
  15.  UNIQUE KEY `UQ_record` (`country_id`,`name`) USING BTREE
  16. ) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8
  17.  
  18. CREATE TABLE `municipality` (
  19.  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  20.  `province_id` int(10) UNSIGNED DEFAULT NULL,
  21.  `name` char(25) NOT NULL,
  22.  `EKATTE` char(5) NOT NULL,
  23.  `EKATTE_code` char(5) NOT NULL,
  24.  PRIMARY KEY (`id`),
  25.  UNIQUE KEY `UQ_record` (`province_id`,`name`) USING BTREE
  26. ) ENGINE=InnoDB AUTO_INCREMENT=265 DEFAULT CHARSET=utf8
  27.  
  28. CREATE TABLE `city` (
  29.  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  30.  `municipality_id` int(10) UNSIGNED DEFAULT NULL,
  31.  `name` char(25) NOT NULL,
  32.  `type` char(4) NOT NULL,
  33.  `zip` char(4) DEFAULT NULL,
  34.  `atitude` smallint(5) UNSIGNED NOT NULL,
  35.  `latitude` float(10,7) DEFAULT NULL,
  36.  `longitude` float(10,7) DEFAULT NULL,
  37.  `population` bigint(20) UNSIGNED DEFAULT NULL,
  38.  `EKATTE` char(8) NOT NULL,
  39.  `EKATTE_code` char(5) NOT NULL,
  40.  PRIMARY KEY (`id`),
  41.  UNIQUE KEY `UQ_record` (`municipality_id`,`name`,`type`) USING BTREE,
  42.  KEY `IX_EKATTE` (`EKATTE`),
  43.  KEY `IX_zip` (`zip`),
  44.  KEY `IX_name` (`name`),
  45.  CONSTRAINT `FK_municipality_id` FOREIGN KEY (`municipality_id`) REFERENCES `municipality` (`id`)
  46. ) ENGINE=InnoDB AUTO_INCREMENT=5303 DEFAULT CHARSET=utf8
  47.  
  48.  

Хм ... сега видях, че не съм създал foreign-keys constraint-ите за всички таблици :)

PS: Явно това е по-стара версия (като гледам съм я ползвал за експорт) - има разни тъпизми от сорта на "type varchar(4)" :) а то си е smallint
« Последна редакция: Oct 12, 2011, 17:42 от VladSun »
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P