| Адаптируем SQL файл для своей сборки |
| Овощ | Дата: Пятница, 30.04.2010, 08:32 | Сообщение # 1 |
Группа: Главный Администратор
Сообщений: 2458
Награды: 150
Репутация: 5375
Статус: Online
| Для вас несекрет - что залог удачного дополнения - ето правильность добавления в Базу данных, а именно SQL запрос (файл .sql). Приступим грызть гранит науки. Первый пример будет о адаптации гм шопов и разных нпс под ваши сборки. Часть I. Итак, для етого нам понадобится : 1. Ваш вносимый .sql файл 2. Файл npc.sql из сборки сервера. Начнем, я сюда приведу пример моей таблицы npc.sql : Code INSERT INTO `npc` VALUES (12077, 12077, "Wolf", 0, "", 0, "Monster.pet_wolf", 13, 11.5, 15, "male", "L2Pet", 40, 195, 164, 3.95, 1.21, 40, 43, 30, 21, 20, 25, 0, 0, 9, 19, 3, 17, 282, 0, 333, 0, 0, 0, 26, 137, "NULL", 0, 0, 0, "LAST_HIT", 0, 0, 0, "fighter") ето я выташил из моей npc.sql находяшейся в сервере в moi_server/sql/ теперь я вам поясню его : Code INSERT INTO 'npc' VALUES (`id`, `idTemplate`, `name`, `serverSideName`, `title`, `serverSideTitle`, `class`, `collision_radius`, `collision_height`, `level`, `sex`, `type`, `attackrange`, `hp`, `mp`, `hpreg`, `mpreg`, `str`, `con`, `dex`, `int`, `wit`, `men`, `exp`, 'sp', `patk`, `pdef`, `matk`, `mdef`, `atkspd`, `aggro`, `matkspd`, `rhand`, `lhand`, `armor`, `walkspd`, `runspd`, `faction_id`, `faction_range`, `isUndead`, `absorb_level`, `absorb_type`, `ss`, `bss`, `ss_rate`, `AI`) INSERT INTO 'npc' - означает, что при выполнении запроса - будет добавлено в таблицу 'npc' данные значаея(VALUES), которые описаны в скобках. Итак, чучуть мы уже разобрались, теперь начнем осваивать как же адаптировать. К примеру, я открываю мой .sql файл(который хочу добавить) и начинаю сверять с моей структурой, которую я описал выше. К примеру, у меня такой запрос : Code INSERT INTO `npc` VALUES (998899, "magaz", 0, "", 0, "gm-shop", 13, 11.5, 15, "male", "L2Npc", 40, 195, 164, 3.95, 1.21, 40, 43, 30, 21, 20, 25, 0, 0, 9, 19, 3, 17, 282, 0, 333, 0, 0, 0, 26, 137, "NULL", 0, 0, 0, "LAST_HIT", 0, 0, 0, "fighter") Начинаю сравнивать его с моей SQL таблицой - и выясняю, что оказывается тут пропушен 1 столбец, а именно : 12077 - `idTemplate`. Увидев ето, я понимаю - что такой запрос в мою .sql не пройдет, и нужно добавть в запрос то, что в нем пропушено. idTemplate - ето как будет отображатся ваш NPC(скин грубо говоря). Поетому, по аналогии я беру его из любого моего сушествуюшего НПС ( к примеру беру с запроса выше - 12077 ) и вставляю его. Вот что получаю : Code INSERT INTO `npc` VALUES (998899, 12077, "magaz", 0, "", 0, "gm-shop", 13, 11.5, 15, "male", "L2Npc", 40, 195, 164, 3.95, 1.21, 40, 43, 30, 21, 20, 25, 0, 0, 9, 19, 3, 17, 282, 0, 333, 0, 0, 0, 26, 137, "NULL", 0, 0, 0, "LAST_HIT", 0, 0, 0, "fighter") И заношу с чистой совестью свой Гм шопчиг в базу даных. ID моего шопа, соответсвенно запроса : 998899. Часть II. 1. INSERT INTO `имя_таблицы` VALUES ('столбец1', 'столбец2', ...., 'столбец_n'); Ето запрос в БД, при помоши которого мы вставляем в таблицу определеные VALUES(значения, а именно столбцы етой таблицы). На моём примере ето наглядно показано. 2. DROP TABLE IF EXISTS `имя_таблицы`; Етот запрос удалит таблицу, если она используется. 3. CREATE TABLE `имя_таблицы` ('имя_столбца1', 'имя_столбца2', ...., 'имя_столбца_n'); Етот запрос создаст таблицу, с определеным именем, и присвоит имена столбцов, как у меня на примере. 4. ENGINE=InnoDB; Ето вы можете тоже увидеть в ваших sql запросах - оно означает, что тип таблицы будет INNODB ( есть еше MyISAM) - для ла2 используются INNODB, и их вы конфигурируете в вашем MySQL(my.ini) 5. Еше, частенько после запроса, к примеру CRATE TABLE вписывают IF NOT EXISTS - ето обозначает, что таблица будет создана, если она НЕ используется(аналогично на другие запросы). Автор: pleomaxs
Вёрстка макетов и создание клан сайтов на uCoz, STRESS - в ICQ Хлеба и зрелищ
загрузка наград ...
|
| |
| |
|
| kubikdanon | Дата: Вторник, 07.09.2010, 20:05 | Сообщение # 2 |
Группа: Постоянный
Сообщений: 5
Награды: 0
Репутация: 0
Статус: Offline
| тЫ меня направил в эту тему, но ! у меня sql файл, который лежит в папке с сервером НЕ ВЫПОЛНЯЕТСЯ тоже выбивает ошибку и я не знаю что делать((( где пример взять ?
загрузка наград ...
|
| |
| |
|
| Bizon | Дата: Воскресенье, 19.09.2010, 17:28 | Сообщение # 3 |
Группа: Постоянный
Сообщений: 14
Награды: 0
Репутация: 0
Статус: Offline
| kubikdanon ты думаешь люди сидящие на форуме телепаты? напиши саму ошибку, там видно будет. самая распространенная ошибка при заливке sql - нехватка или излишка значений для таблицы, тут придется просмотреть таблицу и по примеру тех значений что уже вписаны либо добавлять параметры либо удалять
загрузка наград ...
|
| |
| |
|
| bomba | Дата: Суббота, 27.11.2010, 14:09 | Сообщение # 4 |
Группа: Постоянный
Сообщений: 22
Награды: 0
Репутация: 0
Статус: Offline
| Снус-Мумрик Спс за подсказку ! помогло . Но тут возникла другая проблемма, переделал 4 НПСа, установил и залил в БД нормально, захожу в игру.. установил всех 4 НПС, но 1 НПС нормально а остальные 3 НПС не видны ! то есть я знаю где они стоят и я кликаю на них и они работают нормально но не видно их в чём проблемма может быть ?
загрузка наград ...
|
| |
| |
|
| ARTYR | Дата: Суббота, 27.11.2010, 18:36 | Сообщение # 5 |
Группа: Постоянный
Сообщений: 127
Награды: 2
Репутация: 3
Статус: Offline
| Поменяй скин нпц.
загрузка наград ...
|
| |
| |
|
| asasinn | Дата: Вторник, 11.01.2011, 20:07 | Сообщение # 6 |
Группа: Постоянный
Сообщений: 452
Награды: 48
Репутация: -10000
Статус: Offline
| В базу не до залили
загрузка наград ...
|
| |
| |
|
| FreeSmoke | Дата: Пятница, 14.01.2011, 17:27 | Сообщение # 7 |
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
| Подскажи куда надо зайти чтоб послать запрос SQL ? Я нуб в этом деле...
загрузка наград ...
|
| |
| |
|
| Reventon | Дата: Пятница, 14.01.2011, 18:30 | Сообщение # 8 |
Группа: Постоянный
Сообщений: 525
Награды: 44
Репутация: 117
Статус: Offline
| Quote (FreeSmoke) Подскажи куда надо зайти чтоб послать запрос SQL ? Я нуб в этом деле... В консоль. В Navicat горячая клавиша F6.
Lineage Eternal
загрузка наград ...
|
| |
| |
|
| FreeSmoke | Дата: Пятница, 14.01.2011, 20:57 | Сообщение # 9 |
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
| Во спасибо... А что надо писать чтоб послать запрос??? Дайте ссылку на мануал
загрузка наград ...
|
| |
| |
|
| Reventon | Дата: Пятница, 14.01.2011, 21:19 | Сообщение # 10 |
Группа: Постоянный
Сообщений: 525
Награды: 44
Репутация: 117
Статус: Offline
| Читай - ссылка
Lineage Eternal
загрузка наград ...
|
| |
| |
|
| lauvas | Дата: Среда, 23.03.2011, 12:49 | Сообщение # 11 |
Группа: Постоянный
Сообщений: 4
Награды: 0
Репутация: 0
Статус: Offline
| [Err] 1136 - Column count doesn't match value count at row 1 [Err] INSERT INTO `weapon` VALUES ('9510', 'Desert Eagle Shield', 'lhand', 'true', '1390', '0', '0', 'wood', 's', '0', '0', 'none', '0', '0.00000', '-8', '321', '20', '0', '0', '0', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); [Msg] Finished - Unsuccessfully --------------------------------------------------я немогу найти проблему где она помагите
laukuma
загрузка наград ...
|
| |
| |
|
| lauvas | Дата: Среда, 23.03.2011, 12:53 | Сообщение # 12 |
Группа: Постоянный
Сообщений: 4
Награды: 0
Репутация: 0
Статус: Offline
| INSERT INTO `weapon` VALUES ('9500', 'Desert Eagle Cutter', 'rhand', 'true', '1520', '1', '1', 'steel', 's', '363', '10', 'sword', '8', '3.00000', '0', '0', '0', '379', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9501', 'Desert Eagle Burster', 'rhand', 'true', '1520', '1', '1', 'steel', 's', '290', '10', 'sword', '8', '3.00000', '0', '0', '0', '379', '0', '217', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9502', 'Desert Eagle Avenger', 'rhand', 'true', '1740', '1', '1', 'fine_steel', 's', '363', '20', 'blunt', '12', '4.00000', '0', '0', '0', '379', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9503', 'Desert Eagle Caster', 'rhand', 'true', '1080', '1', '1', 'wood', 's', '290', '20', 'blunt', '4', '4.00000', '0', '0', '0', '379', '0', '217', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9504', 'Desert Eagle Shaper', 'rhand', 'true', '1520', '1', '1', 'steel', 's', '318', '5', 'dagger', '12', '-3.00000', '0', '0', '0', '433', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9505', 'Desert Eagle Thrower', 'lrhand', 'true', '1520', '1', '1', 'steel', 's', '689', '5', 'bow', '12', '-3.00000', '0', '0', '0', '293', '11', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9506', 'Desert Eagle Stormer', 'lrhand', 'true', '2010', '1', '1', 'bronze', 's', '363', '10', 'pole', '4', '-3.00000', '0', '0', '0', '325', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9507', 'Desert Eagle Knuckles', 'lrhand', 'true', '1550', '1', '1', 'steel', 's', '442', '5', 'dualfist', '4', '4.00000', '0', '0', '0', '325', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9508', 'Desert Eagle Slasher', 'lrhand', 'true', '1740', '1', '1', 'steel', 's', '442', '10', 'bigsword', '4', '0.00000', '0', '0', '0', '325', '0', '163', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9509', 'Desert Eagle Dual Cutter', 'lrhand', 'true', '1580', '1', '1', 'steel', 's', '470', '0', 'dual', '8', '0.00000', '0', '0', '0', '325', '0', '163', '-1', '488', '2440', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `weapon` VALUES ('9510', 'Desert Eagle Shield', 'lhand', 'true', '1390', '0', '0', 'wood', 's', '0', '0', 'none', '0', '0.00000', '-8', '321', '20', '0', '0', '0', '-1', '0', '10394', 'true', 'true', 'true', 'true', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); ВОТ ФАИЙЛ КОТОРОГО ХАЧУ ЗАЛИТЬ
laukuma
загрузка наград ...
Сообщение отредактировал lauvas - Среда, 23.03.2011, 12:54 |
| |
| |
|
| yabloko | Дата: Среда, 23.03.2011, 16:58 | Сообщение # 13 |
Группа: VIP
Сообщений: 219
Награды: 6
Репутация: 7
Статус: Offline
| текст ошибки гласит о том, что количество перечисленных полей не соответствует количеству перечисленных значений - сравнивай.
Был бы я девушкой полюбом дал админу l2edit.ru
загрузка наград ...
|
| |
| |
|
| lauvas | Дата: Воскресенье, 27.03.2011, 17:34 | Сообщение # 14 |
Группа: Постоянный
Сообщений: 4
Награды: 0
Репутация: 0
Статус: Offline
| [Err] 1136 - Column count doesn't match value count at row 1 [Err] INSERT INTO `armor` VALUES ('9534', 'Desert Eagle Helmet', 'head', 'false', 'none', '550', 'wood', 's', '0', '-1', '60', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); [Msg] Finished - Unsuccessfully ------------------------------------------------- РЕБЯТА ПОМАГИТЕ МАНУАЛЫ СО ЗАЛИТЬ ФАЙЛ Я НЕМОГУ ПРОБЛЕМУ НАЙТЫ???? ТОЛКА ЧИСТИЙ СЕРВЕР БЕЗ ДОПОЛНЕЙИ ТО НЕМОГУ ЗАЛИТЬ НЕОДИН ФАЙЛ ...А СЕРВЕР С СТАРАМИ ЗБОРКАМИ УКОТОРИХ УЖЕ ЗАЛЕВАЛЬ ШТОТО Я МАГУ ЗАЛИТЬ ПОМАГИТЕ БУДУ БЛОГОДАРЕН
laukuma
загрузка наград ...
Сообщение отредактировал lauvas - Воскресенье, 27.03.2011, 17:38 |
| |
| |
|
| lauvas | Дата: Воскресенье, 27.03.2011, 17:39 | Сообщение # 15 |
Группа: Постоянный
Сообщений: 4
Награды: 0
Репутация: 0
Статус: Offline
| INSERT INTO `armor` VALUES ('9534', 'Desert Eagle Helmet', 'head', 'false', 'none', '550', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9535', 'Desert Eagle Breastplate', 'chest', 'false', 'heavy', '7620', 'wood', 's', '0', '-1', '219', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9536', 'Desert Eagle Gaiters', 'legs', 'false', 'heavy', '3260', 'wood', 's', '0', '-1', '137', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9537', 'Desert Eagle Gloves', 'gloves', 'false', 'none', '540', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9538', 'Desert Eagle Boots', 'feet', 'false', 'none', '1110', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9539', 'Desert Eagle Leather', 'chest', 'false', 'light', '7620', 'wood', 's', '0', '-1', '219', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9540', 'Desert Eagle Leggings', 'legs', 'false', 'light', '3260', 'wood', 's', '0', '-1', '137', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9541', 'Desert Eagle Gloves', 'gloves', 'false', 'none', '540', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9542', 'Desert Eagle Boots', 'feet', 'false', 'none', '1110', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9543', 'Desert Eagle Tunic', 'chest', 'false', 'magic', '7620', 'wood', 's', '0', '-1', '219', '0', '257', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9544', 'Desert Eagle Stockings', 'legs', 'false', 'magic', '3260', 'wood', 's', '0', '-1', '137', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); INSERT INTO `armor` VALUES ('9545', 'Desert Eagle Gloves', 'gloves', 'false', 'none', '540', 'wood', 's', '0', '-1', '59', '0', '0', '0', '0', 'true', 'true', 'true', 'true', '0', '0'); ВОТ ЦИТАТКА КОТОРОГО Я ХАЧУ ЗАЛИТЬ ПОЛНОСТЕ ЧМСТОМ СЕРВЕРЕ
laukuma
загрузка наград ...
|
| |
| |