การอ้างอิง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)"
]
}}
สมบูรณ์แบบสำหรับการสร้างต้นแบบอย่างรวดเร็ว!