0
私はSqlite.Net
を使用してモバイルアプリケーションを構築していますが、Indexed
という属性があります。これは、ここでの例で示されています:https://github.com/praeclarum/sqlite-net#example-timeインデックス属性はいつSqlite.Netクラスで使用されますか?
public class Stock
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
[MaxLength(8)]
public string Symbol { get; set; }
}
public class Valuation
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
[Indexed]
public int StockId { get; set; }
public DateTime Time { get; set; }
public decimal Price { get; set; }
}
あなたはStockId
列がIndexed
としてマークされますが、テーブルを照会するとき、それは確かにインデックスを決定し、クエリを最適化するために、最大Sqlite
エンジンになります見ることができるように。
私の質問は、Indexed
属性が使用されていて、必要なのですか?
'Index'属性を定義せずに' Valuation'テーブルに新しい行を挿入すると、 'index'がSqliteデータベースで更新されないということはありますか? – user1
属性がないと、更新するインデックスがありません。 –