Anskaffelse og bruk av MySQL Metadata

Det er tre opplysninger, som du gjerne vil ha fra MySQL

Informasjon om resultatet av spørringer.
Dette inkluderer antall poster påvirket av noen SELECT, UPDATE eller DELETE-setningen

Informasjon om tabeller og databaser.
Dette inkluderer informasjon knyttet til strukturen av tabeller og databaser

Informasjon om MySQL server:
Dette inkluderer nåværende status for databaseserveren, versjonsnummer etc.

Det er veldig lett å få alle disse informasjon på mysql spør, men mens du bruker Perl eller PHP APIer, må vi ringe ulike APIer eksplisitt for å få alle disse opplysningene. Følgende avsnitt vil vise deg hvordan du kan få denne informasjonen

Innhenting antall rader påvirket av en spørring.

PERL Eksempel:

I DBI skript, de berørte rader tellingen er returnert av do () eller ved å utføre (), avhengig av hvordan du kjører spørringen:
# Metode 1 # utføre $ spørring ved hjelp do () min $ count = $ dbh- > do ($ query); # rapporten 0 rader hvis en feil occurredprintf "% d rader ble berørt \\ n", (definert (count $) $ teller:? 0); # Metode 2 # utføre spørring ved hjelp forberede () pluss utføre () min $ sth = $ dbh- > forberede ($ query); min $ count = $ sth- > utføre (); printf "% d rader ble berørt \\ n", (definert (count $) $ teller: 0);
PHP Eksempel:

I PHP, påberope seg mysql_affected_rows () -funksjonen til å finne ut hvor mange rader en spørring endret:
$ result_id = mysql_query ($ query, $ conn_id); # rapport 0 rader hvis søket mislyktes $ count = ($ result_id mysql_affected_rows ($ conn_id): 0); print ("$ count rader ble berørt \\ n");
Notering Tabeller og databaser:

Dette er veldig enkelt å liste ned alle databaser og tabeller tilgjengelig med databaseserveren. Din Resultatet kan være null hvis du ikke har tilstrekkelig privilegium.

Bortsett fra den metoden jeg har nevnt nedenfor, kan du bruke VIS tabeller eller VIS DATABASER spørringer for å få oversikt over tabeller eller databaser enten i PHP eller i . PERL

PERL Eksempel:
# Få alle bordene er tilgjengelige i dagens database.mytables = $ dbh- > tabeller (); foreach $ tabellen (tables) {print "Table Name $ tabell \\ n ";}
PHP Eksempel:?
< php $ con = mysql_connect (" localhost "," brukerid "," passord "); if (! $ con) {die ('Kunne ikke koble .: 'mysql_error ());} $ db_list = mysql_list_dbs ($ con), mens ($ db = mysql_fetch_object ($ db_list)) {echo $ DB > Database. "< br />";} mysql_close ($ con); >
Komme Server Metadata:?

Det er følgende kommandoer i MySQL som kan utføres enten på mysql teksten eller bruker noen script som PHP til å få ulike viktige informasjoner om databasetjeneren.
Command
Beskrivelse
VELG VERSION () Server versjon stringSELECT DATABASE () Nåværende databasenavn (tom hvis ingen) Velg Bruker () Nåværende usernameSHOW STATUSServer status indicatorsSHOW VARIABLESServer konfigurasjonsvariabler