Ultimele tutoriale de dezvoltare web
 

AppML - Baze de date de referință


"database" de "database" Proprietatea

"database" de "database" Proprietatea definește o bază de date ca sursă de date. Acesta are următoarele proprietăți sub:

Element Descriere
"connection" Numele unei conexiuni bază de date
"execute" Array de instrucțiuni SQL să fie executate înainte de recuperare de date (optional)
"keyfield" Câmpul cheie pentru masa principală (optional)
"maintable" Tabelul principal pentru această aplicație (optional)
"orderby" O clauză fix SQL orderby pentru aplicația (optional)
"sql" Instrucțiunea SQL pentru preluarea datelor

Datele de la o bază de date

Acest model preia înregistrările care conțin client, oraș și țară dintr-un tabel pentru clienți într-o bază de date SQL:

Exemplu

{
"database": {
    "connection": "mysql",
    "sql"       : "SELECT CustomerName, City, Country FROM Customers",
    "orderby"   : "CustomerName"
}
}

Restricții de filtrare

Pentru a permite utilizatorilor să filtreze date, puteți adăuga informații filtru la modelul:

"filteritems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}]

Restricții de sortare

Pentru a permite utilizatorilor să ordoneze date, puteți adăuga informații de sortare la modelul:

"sortitems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}]

Restricții de actualizare

Pentru a permite utilizatorilor să actualizeze datele, puteți include informații de actualizare în model:

Exemplu

"updateItems" : [
    {"item" : "CustomerName"},
    {"item" : "Address"},
    {"item" : "PostalCode"},
    {"item" : "City"},
    {"item" : "Country"}]

În mod implicit, AppML va permite să filtrați, sortare sau actualizare a datelor, numai acesta este specificat în model.


Baza de date Conexiuni

Conexiuni bază de date sunt definite în appml_config.php:

appml_config.php

<?php echo("Access Forbidden");exit();?>
{
"dateformat" : "yyyy-mm-dd",
"databases": [
    {
    "connection" : "mysql",
    "host"       : "127.0.0.1:3306",
    "dbname"     : "Northwind",
    "username"   : "myUserId",
    "password"   : "myPassword"
    },
    {
    "connection" : "googleDB",
    "host"       : "192.168.1.1:3306",
    "dbname"     : "Northwind",
    "username"   : "myUserId",
    "password"   : "myPassword"
    },
    {
    "connection" : "amazonDB",
    "host"       : "mydbinstance.amazon.com:3306",
    "dbname"     : "Northwind",
    "username"   : "myUserId",
    "password"   : "myPassword"
    },
    {
    "connection" : "azureDB",
    "host"       : "azure.cloudapp.net",
    "dbname"     : "Northwind",
    "username"   : "myUserId",
    "password"   : "myPassword"
    }
]
}

Fișierul de configurare poate conține mai multe conexiuni de baze de date.


crearea bazelor de date

Deoarece AppML vă permite să execute instrucțiuni SQL înainte de pornirea aplicației, puteți utiliza pentru a crea o bază de date, dacă este necesar:

Model

{
"database" : {
"connection" : "myCDs",
"execute" : [
"DROP TABLE IF EXISTS CD_Catalog",
"CREATE TABLE IF NOT EXISTS CD_Catalog (CDID INT NOT NULL AUTO_INCREMENT,PRIMARY KEY (CDID),Title NVARCHAR(255),Artist NVARCHAR(255),Country NVARCHAR(255),Price NUMBER)"
]
}}

Perfect pentru prototipuri rapide!