การอ้างอิงML ของแอป - ฐานข้อมูล


"ฐานข้อมูล" ทรัพย์สิน

คุณสมบัติ "ฐานข้อมูล" กำหนดฐานข้อมูลเป็นแหล่งข้อมูล มีคุณสมบัติย่อยดังต่อไปนี้:

Element Description
"connection" The name of a database connection
"execute" Array of SQL statements to be executed before data retrieval (optional)
"keyfield" The key field for the main table (optional)
"maintable" The main table for this application (optional)
"orderby" A fixed SQL orderby clause for the application (optional)
"sql" The SQL statement for retrieving data

ข้อมูลจากฐานข้อมูล

โมเดลนี้ดึงเรกคอร์ดที่ประกอบด้วยลูกค้า เมือง และประเทศจากตารางลูกค้าในฐานข้อมูล SQL:

ตัวอย่าง

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

ข้อจำกัดของตัวกรอง

เพื่อให้ผู้ใช้สามารถกรองข้อมูลได้ คุณสามารถเพิ่มข้อมูลตัวกรองให้กับโมเดลได้:

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

ข้อจำกัดในการจัดเรียง

เพื่อให้ผู้ใช้สามารถเรียงลำดับข้อมูลได้ คุณสามารถเพิ่มข้อมูลการเรียงลำดับไปยังโมเดลได้:

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

อัปเดตข้อจำกัด

ในการอนุญาตให้ผู้ใช้อัปเดตข้อมูล คุณสามารถรวมข้อมูลการอัพเดทในโมเดล: 

ตัวอย่าง

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

โดยค่าเริ่มต้น AppML จะให้คุณกรอง จัดเรียง หรืออัปเดตข้อมูลได้เฉพาะข้อมูลที่ระบุไว้ในแบบจำลองเท่านั้น


การเชื่อมต่อฐานข้อมูล

การเชื่อมต่อฐานข้อมูลถูกกำหนดไว้ใน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"
    }
]
}

ไฟล์คอนฟิกูเรชันสามารถมีการเชื่อมต่อฐานข้อมูลได้มากมาย


การสร้างฐานข้อมูล

เนื่องจาก AppML อนุญาตให้คุณดำเนินการคำสั่ง SQL ก่อนเริ่มแอปพลิเคชัน คุณสามารถใช้สิ่งนี้เพื่อสร้างฐานข้อมูลได้หากจำเป็น:

แบบอย่าง

{
"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)"
]
}}

สมบูรณ์แบบสำหรับการสร้างต้นแบบอย่างรวดเร็ว!