"database" Nieruchomość
"database" właściwość określa bazę danych jako źródło danych. Posiada następujące właściwości podrzędne:
Element | Opis |
---|---|
"connection" | Nazwa połączenia z bazą danych |
"execute" | Tablica SQL do wykonania przed rozpoczęciem pobierania danych (optional) |
"keyfield" | Kluczowym polem do głównej tabeli (optional) |
"maintable" | Głównym tabeli dla tej aplikacji (optional) |
"orderby" | Stała SQL klauzula orderby dla aplikacji (optional) |
"sql" | SQL do pobierania danych |
Dane z bazy danych
Ten model pobiera rekordy zawierające Klienta, Miasto i kraj z tabeli Customer w bazie danych SQL:
Przykład
{
"database": {
"connection": "mysql",
"sql" :
"SELECT CustomerName, City, Country FROM Customers",
"orderby" : "CustomerName"
}
}
Filtr Ograniczenia
Aby umożliwić użytkownikom filtrować dane, można dodać informację filtra do modelu:
"filteritems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}]
Sortowanie Ograniczenia
Aby umożliwić użytkownikom sortowanie danych, można dodać informację sortowania do modelu:
"sortitems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}]
Ograniczenia Aktualizuj
Aby umożliwić użytkownikom aktualizację danych, można dołączyć informacje o aktualizacji w modelu:
Przykład
"updateItems" : [
{"item" : "CustomerName"},
{"item" : "Address"},
{"item" : "PostalCode"},
{"item" : "City"},
{"item" : "Country"}]
Domyślnie AppML pozwoli filtrować, sortować i aktualizować dane, tylko ono jest określona w modelu.
Połączenia z bazami danych
Połączenia z bazami danych są zdefiniowane w 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"
}
]
}
Plik konfiguracyjny może zawierać wiele połączeń z bazą danych.
Tworzenie baz danych
Od AppML pozwala na wykonanie instrukcji SQL przed uruchomieniem aplikacji, można to wykorzystać, aby utworzyć bazę danych w razie potrzeby:
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)"
]
}}
Idealny do szybkiego prototypowania!