Test side 10

MySQLI - En ud af flere testsider hvor jeg prøver forskellig kode

Introduktion

MySQLI er en forkortelse for My (navnet på en medstifters datter) Structured Query Language Improved.

Her på siden er det meningen at jeg kun vil skrive om den nye MySQLI extension med den objekt orienterede syntax og ikke med den originale MySQL extension med den procuderale syntax.

Fra PHP 5.5.0 er det originale MySQL API udgået (deprecated) og bør derfor ikke bruges til at skrive ny kode.
Man kan i stedet bruge MySQLI (MySQL Improved) eller PDO (PHP Data Objects).

Se også MySQL server.

Objekt orienteret og procedural syntax

Det originale MySQL API bruger kun procedural syntax mens MySQLI API både kan bruges med objekt orienteret og procedural syntax.

Da MySQLI API procedural syntax blot er aliaser for den objekt orienterede syntax vælger jeg at bruge den objekt orientede syntax i min kode.

Her ses forskellen.


Inden du går i gang

Hvis du vil bruge MySQL på din egen computer så start med at installer MySQL server.

I din PHP kode skal skal du bruge information om server, brugernavn og kodeord for at logge på MySQL serveren.

Serveren kan være "localhost" hvis du bruger din egen computer som MySQL server.
Brugernavnet kan være "root".
Kodeordet vælges under MySQL installationen.

Database struktur

Data gemmes i en database.

I databasen findes tables.

I tables findes columns.

I columns findes rows (en liste med værdier).

Hver værdi i listen kaldes en record.

Forbind til serveren

Åben en ny forbindelse til en MySQL server.

Hvis close() ikke kaldes så lukkes forbindelsen automatisk når PHP scriptet er blevet udført.

Test om MySQL serveren er oppe

Jeg ved ikke specielt meget om MySQL men hvis man forsøger at få adgang til MySQL serveren og den er nede så kan det få betydning for resten af hjemmesiden, så hjemmesiden eller dele af hjemmesiden ikke vises.

Derfor vil jeg gerne lave noget kode der tester om MySQL serveren er oppe eller nede.

Jeg ved endnu ikke så meget om det men her er noget ufærdig kode.

SQL kommandoer

USE (vælg database)
CREATE
DROP
DROP DATABASE navn (slet database)
INSERT
UPDATE
DELETE

Returner resource eller FALSE :
SELECT
SHOW
DESCRIBE
EXPLAIN

Returner TRUE eller FALSE :
INSERT
UPDATE
DELETE
DROP

SQL kommandoer jeg har brugt

Tilføj column til eksisterende table...

Indlæs queries fra fil

Man kan også skrive sine queries i en fil også indlæse filen for at få udført kommandoerne i den.

Tror nok det ser sådan her ud.

Man kan også indlæse data fra en tekstfil ind i en table.
Noget i denne stil.

Filen madopskifter.txt indeholder så data som er separeret med tabulator og newline.

fejlbeskeder

Når jeg bruger denne kode til at forbindelse til MySQL databasen så sker det en sjælden gang på mit webhotel at jeg får to fejlbeskeder.



Jeg ved endnu ikke hvorfor jeg får to næsten ens fejlbeskeder hvor den ene har "(HY000/2002): ".
Nogen gange er de på dansk, andre gange på engelsk.

Skriv din kommentar

Spørg mig om hvad som helst
Du kan også skrive direkte til mig på
Stem
Søg
Language

Select English to navigate the website in English. Things like the navigation menu and contact form will be in English, but the main content on each page will not be translated.