Съхраняващи процедури с параметри от PHP

Съдържание
Съхранените процедури са много полезни за капсулиране на операции с бази данни и спестяване на време за разработка.
Когато трябва да поддържате база данни с много транзакции и известна поверителност, можете да имате екип от разработчици, които правят код, без да знаят каква е базата данни.
За това ще използваме съхранени процедури
Пример
Създаваме база данни за недвижими имоти и таблица за недвижими имоти (използваме няколко полета, за да не генерираме обширен и объркващ код)
 СЪЗДАЙТЕ ТАБЛИЦА, АКО НЯМА „недвижими имоти“ („id“ int (11) NOT NULL AUTO_INCREMENT, „furnituretype“ varchar (100) DEFAULT '0', `price` decimal (10,2) DEFAULT '0.00',` description` текст, ОСНОВЕН КЛЮЧ (`id`)) ДВИГАТЕЛ = MyISAM AUTO_INCREMENT = 195 КАРТЕТА ПО подразбиране = latin1; 

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

След това създаваме формуляр за регистрация на html данни, за да въведем стойностите на новите свойства.

[color = # 000000] Тук изпращаме информацията до файл save.php, който ще извика съхранената процедура и това ще запази данните. [/ color]
[color = # 000000] За да направим това, трябва предварително да сме създали кода за връзка с базата данни. [/ color]
[color = # 000000] Създаваме файл config.php [/ color]

<? php

// Низ за връзка с база данни

$ link = mysql_connect ('localhost', 'user', 'password');

// връзка с база данни

ако (! $ връзка) {

die ('Не е свързан:'. mysql_error ());

}

// Избор на база данни

$ db = 'dbInmobiliaria';

if (! mysql_select_db ($ db)) {

die ('Грешка:'. mysql_error ());

}?> var13 ->

В изображението можем да видим как съхранената процедура се извиква чрез SQL израза ОБАДИ СЕ

CALL newinmueble (параметър1, параметър2, …)

Създаваме друга съхранена процедура в базата данни за запитване по тип свойство.

CREATE процедура списък с мебели (тип varchar (150))

[отстъп = 1]SELECT * FROM property WHERE тип LIKE
В допълнение към използването му в php, можем да направим заявката от всеки софтуер, който поддържа sql и mysql в този случай.
В този случай тествахме списък на свойствата на съхранената процедура по тип от софтуера за управление на mysql Heidisql
CALL списък на мебели („къща“)
Резултатът може да се види по -долу, тъй като е филтриран по тип собственост.

Можем също така да създадем съхранена процедура за изтриване на данни, където ще изпратим идентификатора като параметър
[color = # 000000] CREATE процедура за изтриване на свойство (id свойство INT) [/ color]
[цвят = # 000000]SELECT * FROM real estate WHERE id = id на недвижим имот[/Цвят]
След това извикваме съхранената процедура, както следва
CALL изтриване на свойство (172)
Интересното в това е, че ако бяхме администратори на бази данни на много сложна система, бихме могли да направим достъпни за програмистите само списъка с процедури, но не и структурата на базата данни, което осигурява по -голяма поверителност.
Позволявайки им да взаимодействат с данните, но не и със структурата, дори че те могат само да четат, но не и да променят. Това би било проблем за големи системи с бази данни с много хора, които си взаимодействат, където сигурността и поверителността са важни.
Най -популярните бази данни, които поддържат съхранени процедури, са mysql, firebird, ms sql сървър, oracle, db2 postgresql, sybase (първо създава език за транзакции на база данни за sql, наречен Transact-SQL).Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave