- Update
- Delete

Constructorul de comenzi SQL din Laravel furnizeaza o interfata fluenta pentru crearea si executarea de instructiuni SQL in baze de date.
- Foloseste extensia PDO cu parametri de protectie SQL injection. Nu e nevoie de filtrarea datelor adaugate in instructiunile SQL.

Mai intai, adaugati class Facades DB in controller:
use Illuminate\Support\Facades\DB;
Apoi, se foloseste metoda DB::table() pentru a incepe construirea interogarii SQL.

Insert

Pentru a executa instructiuni INSERT cu constructorul de comenzi, folositi metoda insert(). Aceasta acepta un array cu nume si valori pt. coloane.
DB::table('users')->insert(['name'=>'MarPlo', 'votes'=>0]);
- Pentru a introduce mai multe inregistrari in tabel cu o singura apelare a metodei insert(), adaugati o serie de mai multe array-uri in array.
DB::table('users')->insert([
 ['name'=>'MarPlo', 'votes'=>0],
 ['name'=>'PloMar', 'votes'=>0]
]);

Auto-incrementare ID

Daca tabelul are o coloana id AUTO-INCREMENT, folositi metoda insertGetId() pentru a face INSERT si sa obtineti ID-ul.
$id = DB::table('users')->insertGetId(['name'=>'MarPlo', 'votes'=>0]);

Update

Pentru a face UPDATE in MySQL cu constructorul de comenzi, folositi metoda update(). Aceasta acepta array cu nume si valori pt. coloane.
Puteti de asemenea sa folositi clauze where().
DB::table('users')->where('id', 1)->update(['votes'=>1]);
- Cand faceti UPDATE la o coloana JSON (in baze de date care suporta coloane JSON), folositi sintaxa "->" pentru a accesa elementul potrivit din obiectul JSON.
DB::table('users')->where('id', 1)->update(['options->enabled'=>true]);

Metodele increment() si decrement()

Pentru a incrementa sau micsora valoarea dintr-o coloana numerica, puteti folosi metodele: increment('col', $nr) / decrement('col', $nr).
Primul argument e 'numele coloanei', al doilea argument e optional, reprezinta cantitatea de incrementare sau micsorare.
DB::table('users')->increment('votes');

DB::table('users')->increment('votes', 5);

DB::table('users')->decrement('votes');

DB::table('users')->decrement('votes', 5);
- Puteti sa specificati si alte coloane pt. update in timpul operatiunii de incrementare /decrementare.
DB::table('users')->increment('votes', 1, ['name'=>'MarPlo']);

Delete

Ca sa stergeti randuri din tabel MySQL, puteti folosi metoda delete().
De asemenea, puteti aplica si clauze where().
DB::table('users')->where('votes', '>', 10)->delete();
- Daca vreti sa faceti TRUNCATE la un tabel (instructiune ce sterge toate randurile si reseteaza la 0 coloana id de tip AUTO-INCREMENT), folositi metoda truncate().
DB::table('users')->truncate();


- Documentatie: Laravel - Database: Query Builder

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag creaza un text ingrosat?
<q> <strong> <em>
<p>Adresa: <strong>http://CoursesWeb.net/</strong> - Tutoriale.</p>
Care din aceste coduri CSS afiseaza textul ingrosat?
text-size: 18px; font-style: italic; font-weight: 800;
#id {
  font-weight: 800;
}
Ce functie JavaScript apeleaza o alta functie, in mod repetat, la un anumit interval de timp?
setInterval() setTimeout() push()
function someFunction() { alert("CoursesWeb.net"); }
setInterval("someFunction()", 2000);
Clic pe variabila definita corect in PHP.
var vname = 8; $vname = 8; $vname == 8;
$vname = 8;
echo $vname;
Care din urmatoarele forme ale verbului "travel" (a calatori) e la timpul Prezent Perfect?
have traveled shall travel had traveled
We have traveled in space.
- Noi am calatorit (deja) in spatiu.
Care din urmatoarele forme ale verbului "pintar" (a picta) se foloseste la Trecutul Imperfect?
ir a pintar pintaba pintó
La niña pintaba un arco iris.
- Fetita picta un curcubeu.
Baza de Date MySQL - Constructor de Comenzi SQL: Insert, Update, Delete

Last accessed pages

  1. Gramatica limbii engleze - Prezentare Generala (89256)
  2. Trecut perfect si Trecutul perfect continuu - Present perfect and Continuous (20714)
  3. Gradele de comparatie: comparative, superlative (14880)
  4. Confusable words - Cuvinte confundabile - Test Engleza (1249)
  5. Confusable words - Cuvinte confundabile (2553)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (3240)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1498)
  3. Creare si editare pagini HTML (1243)
  4. Curs HTML gratuit Tutoriale HTML5 (1093)
  5. Prezentul simplu si continuu - Present Tense Simple and Continuous (956)