"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!