PDF (美式 Letter) - 1.2Mb
PDF (A4) - 1.2Mb
當您在程式語言中使用 X DevAPI,而程式語言會完整指定要使用的語法時 (例如,當透過 X DevAPI 工作階段執行 SQL 陳述式或使用任何 CRUD 作業時),實際的作業只會在呼叫 execute()
函數時才會執行。例如
var result = mySession.sql('show databases').execute()
var result2 = myColl.find().execute()
上述 execute()
函數的呼叫會導致執行作業並傳回 Result 物件。然後,傳回的 Result 物件會指派給變數,而此指派是最後執行的作業,不會傳回任何資料。這類作業也可以傳回 Result 物件,該物件會用於處理從作業傳回的資訊。
或者,MySQL Shell 提供下列易用性功能,讓您更輕鬆地以互動方式使用 X DevAPI
自動執行 CRUD 和 SQL 作業。
自動處理結果。
為了實現此功能,MySQL Shell 會在您每次輸入陳述式時,監控上次執行的作業結果。這些功能的組合使 MySQL Shell 互動模式成為程式碼原型製作的理想選擇,因為作業會立即執行,且其結果會顯示,而無需任何額外的程式碼。如需更多資訊,請參閱 MySQL Shell 8.0。
如果 MySQL Shell 偵測到已傳回準備執行的 CRUD 作業,則會自動呼叫 execute()
函數。在 MySQL Shell 中重複上述範例並移除指派作業,即可顯示作業會自動執行。
mysql-js> mySession.sql('show databases')
mysql-js> myColl.find()
MySQL Shell 會執行 SQL 作業,如上述所述,一旦此作業執行,就會傳回 Result 物件。
如果 MySQL Shell 偵測到將傳回 Result 物件,則會自動處理該物件,並以最佳格式列印結果資料。有不同類型的 Result 物件,且格式會因物件而異。
mysql-js> db.countryInfo.find().limit(1)
[
{
"GNP": 828,
"IndepYear": null,
"Name": "Aruba",
"_id": "ABW",
"demographics": {
"LifeExpectancy": 78.4000015258789,
"Population": 103000
},
"geography": {
"Continent": "North America",
"Region": "Caribbean",
"SurfaceArea": 193
},
"government": {
"GovernmentForm": "Nonmetropolitan Territory of The Netherlands",
"HeadOfState": "Beatrix"
}
}
]
1 document in set (0.00 sec)