Store procedure con parametri da PHP

Sommario
Le stored procedure sono molto utili per incapsulare le operazioni del database e risparmiare tempo di sviluppo.
Quando hai bisogno di mantenere un database con molte transazioni e una certa riservatezza, puoi avere un team di sviluppatori che creano codice senza sapere com'è il database.
Per questo utilizzeremo le stored procedure
Esempio
Creiamo un database per un immobile e una tabella per un immobile (usiamo pochi campi per non generare codice esteso e confuso)
 CREA TABELLA SE NON ESISTE `real estate` (`id` int (11) NOT NULL AUTO_INCREMENT, `furnituretype` varchar (100) DEFAULT '0',` price` decimal (10,2) DEFAULT '0.00', `descrizione` text , PRIMARY KEY (`id`)) ENGINE = MyISAM AUTO_INCREMENT = 195 DEFAULT CHARSET = latin1; 

Creo una stored procedure nuova proprietà per inserire le proprietà nel database. Quando lo definisco assegno come parametro i dati che deve accettare, in questo caso proprietà, prezzo e descrizione, ognuno con il suo formato mysql, scrivo anche l'azione INSERT

Quindi creiamo un modulo di registrazione dati html per inserire i valori delle nuove proprietà.

[color = # 000000] Qui inviamo le informazioni a un file save.php che chiamerà la stored procedure e questo salverà i dati. [/ color]
[color = # 000000] Per fare ciò, dobbiamo aver precedentemente creato il codice di connessione al database. [/ color]
[color = # 000000] Creiamo un file config.php [/ color]

<?php

// Stringa di connessione al database

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

// connessione al database

if (! $ collegamento) {

die ('Non connesso:'. mysql_error());

}

// Seleziona database

$ db = 'dbInmobiliaria';

if (! mysql_select_db ($ db)) {

die('Errore:'. mysql_error());

}?> var13 ->

Nell'immagine possiamo vedere come viene chiamata la stored procedure tramite l'istruzione SQL CHIAMATA

CALL nuovoinmueble (parametro1, parametro2, …)

Creiamo un'altra stored procedure nel database per interrogare per tipo di proprietà.

CREATE procedura elenco mobili (digitare varchar (150))

[ritratto = 1]SELECT * FROM proprietà WHERE proprietà LIKE tipo
Oltre a usarlo in php, possiamo effettuare la query da qualsiasi software che supporti sql e mysql in questo caso.
Abbiamo testato l'elenco delle proprietà della stored procedure per tipo in questo caso dal software di gestione mysql Heidisql
CALL elenco dei mobili ("casa")
Il risultato può essere visto di seguito poiché è stato filtrato per tipo di proprietà.

Possiamo anche creare una stored procedure per eliminare i dati in cui invieremo l'id come parametro
[color = # 000000] procedura CREATE delete proprietà (proprietà id INT) [/ color]
[colore = # 000000]SELECT * FROM immobiliare WHERE id = immobiliare id[/Colore]
Quindi chiamiamo la stored procedure come segue
CALL elimina proprietà (172)
La cosa interessante di questo è che se fossimo amministratori di database di un sistema molto complesso, potremmo mettere a disposizione dei programmatori solo l'elenco delle procedure e non la struttura del database, che garantisce una maggiore riservatezza.
Permettendo loro di interagire con i dati ma non con la struttura, anche che possono solo leggere ma non modificare. Questo sarebbe un problema per i sistemi di database di grandi dimensioni con molte persone che interagiscono dove la sicurezza e la riservatezza sono importanti.
I database più popolari che supportano le stored procedure sono mysql, firebird, ms sql server, oracle, db2 postgresql, sybase (il primo a creare un linguaggio di transazione del database per sql chiamato Transact-SQL).Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave