Curs Php-mysql

- 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
Ce atribut e folosit in tag-ul <a> pentru adresa link-ului?
src href rel
<a href="http://coursesweb.net/" title="CoursesWeb.net">CoursesWeb.net</a>
Ce proprietate CSS seteaza tipul fontului utilizat?
font-family text-decoration font-size
h2 {
  font-family:"Calibri", sans-serif;
}
Ce instructiune selecteaza toate tag-urile <div> cu class="cls"?
querySelector("div.cls") getElementsByTagName("div") querySelectorAll("div.cls")
var elm_list = document.querySelectorAll("div.cls");
var nr_elms = elm_list.length;       // numar elemente selectate
alert(nr_elms);
Indicati functia care returneaza suma valorilor dintr-un array.
array_sum() array_diff() array_shift()
$arr =[1, 2, 3, 4);
$arr_sum = array_sum($arr);
echo $arr_sum;       // 10
Indicati forma corecta a verbului "study" (a studia) la Trecutul Simplu in aceasta propozitie: "We (study) English."
studyed studys studied
We studied English.
- Noi am studiat engleza.
Indicati forma corecta a verbului "decir" (a spune) la Prezent in aceasta propozitie: "Yo (decir) siempre la verdad."
digas digo decir
Yo digo siempre la verdad.
- Eu spun mereu adevarul.
Baza de Date MySQL - Constructor de Comenzi SQL: Insert, Update, Delete

Last accessed pages

  1. Subjunctiv - Actiuni ne completate (1262)
  2. Curs CSS Online Tutoriale CSS3 (117648)
  3. Schimbare imagine din select (708)
  4. Subjunctiv - Ignoranta indoiala (1063)
  5. Exprimarea timpului (1776)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (394)
  2. Gramatica limbii spaniole. Indrumator si prezentare generala (308)
  3. Limba spaniola curs online incepatori si avansati (148)
  4. Gramatica limbii engleze - Prezentare Generala (148)
  5. Teste spaniola - Tests y ejercicios de Español - Gramática (147)