Перейти к содержанию
Авторизация  

[Мануал] Пишем запросы в базу данных.


Описание

SQL base.

На многих серверах администраторы/гмы сталкиваются с разными проблемами из за незнания sql запросов.К примеру - удаление вещи из вендора, смена морфа или смену цены.

Итак что бы создать запрос вам нужно зайти в вашу базу данных (Navicat, Sqlyog, Quice) и открыть консоль.В появившемся окне мы будем писать наши запросы.Так же можно создать SQL файл локально через Notepad++ и в следствии просто загрузить файл в базу.Но как мы знаем в WoW существует 3 базы.В крации я расскажу о них

 

AUTH - Отвечает за настройку реалма, так же за доступ игроков.

CHARACTERS - Содержит всю информацию о созданных персонажах.

WORLD - Основная база с которой вам нужно будет поработать - Тут вам и все существа мира, все цены, Гм команды, Лут и т.д.

Основные операторы с которыми вы столкнетесь:

SELECT *FROM - Запрос для получении информации о каком нибудь предмете или NPC.

Пример:

use world - Используем базу данных world (Используется в тех случаях, когда вы либо пишете запрос со сменой базы данных, либо когда вы пишете его локально)

 

Quote

SELECT *FROM `creature_template` WHERE `entry`=1000;

Не забывайте после окончания запроса ставить ; иначе mysql выдаст вам ошибку

INSERT INTO - Запрос для добавления нового Npc или Itema.

Пример:

 

Quote

INSERT INTO `creature_template` (entry, modelid1, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, Health_mod, Mana_mod, Armor_mod, faction_A, faction_H, npcflag, speed_walk, speed_run, scale, rank, dmg_multiplier, unit_class, unit_flags, type, type_flags, InhabitType, RegenHealth, flags_extra, AiName) VALUES

('399997', '21572', "Test", "", 'Directions', '32300', 71, 71, 1.56, 1.56, 1.56, 35, 35, 3, 1, 1.14286, 1.25, 1, 1, 1, 2, 7, 138936390, 3, 1, 2, 'SmartAI');

Как вы видите до слова VALUES у вас идут названия столбцов, а после - их значения и если здесь допустить ошибку mysql так же выдаст ошибку.

Хоть Запрос кажется большим и не красивым он способен на многое =)

UPDATE - Запрос обновления для чего либо.

Пример: у вашего NPC, ID которого 1000 - размер 1, а вам нужно его увеличить в 2 раза.

 

Quote

UPDATE `creature_template` SET `scale`=2 WHERE `entry`=1000;

Этим запросом вы изменили значение в графе `scale` у нпс с id 1000. (creature_template - Таблица со всеми NPC игрового мира)

DELETE FROM - По названию можно догадаться что это оператор на удаление чего-либо.

Пример: Вы нечаянно добавили в вендора ШМ и хотите убрать его.Условно - ID npc = xxx, ID ШМ = yyy

 

Quote

DELETE FROM `npc_vendor` WHERE `entry`=xxx AND `item`=yyy;

(npc_vendor - Таблица содержащая в себе всех продавцов мира - то что они продают, цену и т.д. содержится именно здесь)

REPLACE INTO - Оператор замены(REPLACE INTO = DELETE FROM+INSERT INTO)

Используется не так часто, но иногда бывает очень полезен.

Пример:

 

 

Quote

REPLACE INTO `creature_equip_template` (`entry`, `equipentry1`, `equipentry2`, `equipentry3`) VALUES (100001, 30316, 0, 0);



Рекомендуемые комментарии

Комментариев нет

×
×
  • Создать...