Sencha Touch 2 アプリで SQL プロキシを使用しており、データをオフラインで保存および取得できます。
私ができないこと、および Sencha のドキュメントが提供していないように見えることは、Sencha SQL ストアをカスタマイズする方法です。
たとえば、SQL ベースのストアを作成するために、次のことを行いました -
Ext.define("MyApp.model.Customer", {
extend: "Ext.data.Model",
config: {
fields: [
{name: 'id', type: 'int'},
{name: 'name', type: 'string'},
{name: 'age', type: 'string'}
],
proxy: {
type: "sql",
database: "MyDb",
}
}
});
1. データベースのサイズを指定するにはどうすればよいですか?
2. 一意、主キーなどのフィールドに制約を指定するにはどうすればよいですか?
たとえば、データベースに 4 つの列があります: pid、name、age、phone
複数のフィールドの主キーが必要です: (pid, name)
SQLクエリを介してテーブルを作成していた場合、次のようにします-
CREATE TABLE Persons
(
pid int,
name varchar(255),
age int,
phone int,
primary key (pid,name)
);
モデルを介して同じことを達成するにはどうすればよいですか?
3. SQL クエリを介してデータベースとやり取りしたい場合は、次のようにします -
var query = "SELECT * from CUSTOMER"; var db = openDatabase('MyDb', '1.0', 'MyDb', 2 * 1024 * 1024); db.transaction(関数(TX) { tx.executeSql(クエリ、[]、関数(tx、結果) { // ここで何かをする }、 ヌル); });
これが最善の方法ですか?