簡體   English   中英

AS3。 將數組存儲在本地SQL數據庫中

[英]AS3. Store Array in Local SQL Database

我正在Adobe Flash Builder 4.6(AIR APP)中開發一個應用程序,其中用戶填寫表單並將數據(例如姓名,電話,地址(以及一些報告數據))存儲在本地SQL數據庫中。 我的編碼很好,但是只有一個問題。 除了數據外,還有一個我要存儲在本地SQL數據庫上的數組,但是所有嘗試都失敗了。 我將數組存儲為數據庫中的text數據類型,當我訪問存儲的數組時,它給出一個錯誤。 Cannot convert "[object Object]" to Array 我不知道這是什么問題。 請幫助...謝謝。

我使用像嵌套數組這樣的數組。我的數組是

var ar:Array=["report_name", {label: report_label, number: 5}, [{label: Label1, data: Data1}, {label: Label2, data: Data2}, {label: Label3, data: Data3}]];

現在我將此數組存儲在數據庫中。

sqlstatement.text ="INSERT INTO table (id, data) VALUES ('', '"+ar+"')";

在此語句中,數據具有TEXT數據類型。 現在,當我像訪問

var array:Array = [];
array = Array(sqlstatement.getResult().data[0].data;

它會導致強制錯誤。

您得到的結果是因為SQL查詢基本上是一個字符串,所以它等於

"INSERT INTO table (id, data) VALUES ('', '" + ar.toString() + "')"

您將丟失所有通用對象{...}和數據結構。

MESepehr是絕對正確的,您需要的是JSON數據格式,只要您僅在其中保留NumberintStringBooleanArrayObjectnull ,那么它對您就可以正常工作。

然后,如下所示。

商店:

sqlstatement.text = "INSERT INTO table (id, data) VALUES ('', '" + JSON.stringify(ar) + "')";

恢復:

var array:Array = JSON.parse(sqlstatement.getResult().data[0].data) as Array;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM