ПредишенСледващото

RED LINE Най-добрата сделка за вас и вашия бизнес!

Хабаровск, ul.Gamarnika 8
(4212) 658-653, 637-673
8-924-200-7194, 8-924-200-4895

За районите на Русия
8-800-550-9899
(От 3 до 11 на MSC, обаждането е безплатно)
Пишете ни

Начало MySQL бази данни съхранени процедури

Long мъчен с въпроса. Литература в интернет малко, особено на руски. Аз трябваше да поразпитам в чужди форуми, по-дълбоко копаят в ръководствата и да се изясни за себе си някои странни моменти. Така че, накратко за съхраняваните процедури в MySQL.

Съхранени процедури - какво е това?

Съхранени процедури се появиха след 5 версия MySQL. Те ви позволяват да се автоматизира сложните процеси на нивото на MySQL, а не с помощта на външни скриптове за това. Това ни дава най-високата скорост на изпълнение, тъй като ние не карам голям брой заявки, но само веднъж се обадите на конкретна процедура (или функция).

Какво ви е необходимо? Инсталиране на сървъра версия на MySQL 5 или по-висока (dev.mysql.com/downloads). Процедури Можете да създадете заявки, като в командния ред MySQL, но за удобство на съвети, за да изтеглите MySQL GUI инструменти (dev.mysql.com/downloads/gui-tools). Този пакет включва три програми - MySQL Administrator, MySQL Query Browser и MySQL Миграция Toolkit. Ние се нуждаем от първите две. (Въпреки, че можете да получите един MySQL Query Browser, но всички тези $$ в съхранени процедури понякога могат да бъдат объркващи).

Първата съхранена процедура

Така че, отворен MySQL от администратор, се свържете със сървъра MySQL и създаване на нова схема (база данни), щракнете с Каталога, изберете Create New схема в схеми (Ctrl + N). Наречете го по някакъв начин (например db). Отваряне на новосъздадената схема, изберете раздела Съхранени процедури и след това върху създават съхранявани Proc. Обадете се на процедура процедура1. Тялото на процедурата (между започват и свършват) се регистрират, както следва:


И кликнете Изпълнение на SQL - ред, установен. Отворете MySQL Query Browser, изберете вашата схема (db) и въведете следната заявка:

За да премахнете Каку известна полза от съхранени процедури в MySQL, трябва да се работи с променливи. Тъй като това е извън обхвата на тази статия, аз ще покажа само няколко примера.
прости променливи


Разликата между прости и системни променливи, които променливите системата достъпна от външната страна на съхранена процедура. Това е, за да извлечете всички данни, които трябва да използвате системата, и променливите, които са необходими, само в рамките на процедурата следва да са прости.

Параметрите в съхранени процедури

Тук също всичко е съвсем проста. Промяна на първа линия, с което декларира, самата процедура:


Тук, в ключовата дума показва, че параметърът е посочен като само за четене. Освен това, тази опция работи като нормален променлива в рамките на процедурата:


Условия цикли. АКО ТОГАВА Иначе, докато

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

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


Тук титлата, ние ще бъде водещ в новата тема. Е, на масата, например с различни статистически променливи на обекта, включително общия брой на тези в униформа.


Ето, че всичко е ясно, нека да кажем, че имаме налице са данни с име = конци и стойност = 0. Създаване на нова запомнена процедура процедура2.


Обяснете нищо особено, просто двете заявки са обединени в един. Сега можем да наречем тази процедура, както следва:

CALL процедура2 ( "Моята нова тема ');

По този начин, вместо да минава на две или повече заявки (например чрез PHP), можем да изпратим едно - да се оптимизира, чист код и може да бъде променяна по всяко време, без да се засягат други скриптове.

Бърз позволяват да мине през всички получени резултати поискване. На теория е трудно да се обясни, и да се покаже на практика. Добавяне на друга маса до нашата база данни - хитове:


Тук ние ще запише всичко на таговете от всички теми. Съхранената процедура ще изглежда така:


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

Отваряне на курсора и да получите първия запис. Следваща в цикъла - Избор на броя на мачовете на таговете за масата за ток и поставете резултата в променливата iCount. Ако няма резултати, а след това заявката за INSERT добавя нов маркер.

В крайна сметка, ние приключи процедурите за курсора и излизане. Е, това е всичко.

Нека си припомним променливи на системата и да обмислят още една манипулация на нашите маси - да се общият брой на тагове и теми. Се отправи незабавно към процедурата:


Ние заявяваме, две променливи - iTags - брой етикети и iThreads - общият брой на теми.

Следващите две прости изберете заявка, попълване на нашите променливи. Така че в крайна сметка те зададете стойности на променливи текущи прости променливи. Когато се обадите на тази процедура не се връща нищо, но след разговор, можем да предположим, желаните стойности на системните променливи:

А заключение и няма да бъде;) Ще се радваме да отговорим на вашите въпроси - пишете в коментарите.

Сподели с приятели:

Промоция: Резервирайте всеки сайт преди края на действието и да получите отстъпка
+ избор семантична ядро
+ Оптимизация за търсачки
Това ще ви позволи да получите повече клиенти за трафик и следователно от интернет!

Време оставени да си купя

Качествена и обемна представяне на техния бизнес в интернет изисква разрастващ се бизнес единица, която има за цел да увеличи продажбите, поради тази причина сред нашите клиенти големи и малки компании, в много градове в Русия и в чужбина.

Как работим:

консултация
Ще разгледаме това, което трябва и да се определи как най-добре да се направи!

съгласие
Ние сключва договор за услуга, в която са изложени условията и задълженията на двете страни.

изпълнение на строителни работи
Пряко предоставяне на необходимите услуги и работата по задачата си.

подкрепа
Доставка на изпълнение на строителни работи, следните корекции и подкрепа, ако е необходимо.

Все още има въпроси? Обсъждане на всички детайли с управителя

3-11 на MSC, обаждането е безплатно

Свързани статии

Подкрепете проекта - споделете линка, благодаря!