ゆかりすたー NEBULA(ネビュラ)はカラオケ動画ファイルを整理し、ゆかり(持ち込みカラオケ用のブラウザリクエストツール)から検索できるようにするツールです。データベースを活用することにより、タイアップしている番組名や歌手名などの付加情報を含めて整理します。
Ver 6.02 以降は Microsoft Store での配布となっています(引き続き無料です)。それに伴い、Ver 4.60 以前からの更新に当たっては楽曲情報データベースの引き継ぎが必要となります。
(補足)
起動時はスタートメニューから起動してください。
旧 zip バージョンの時に作成したショートカットから起動すると旧バージョンが起動してしまいます。
(補足)
旧 zip 版からストア配布版への自動更新は行われません。
ストア配布のアプリを最初の 1 回はストアで入手する必要があります。
(補足)本記事は、以前の記事を時代に合わせて改訂したものです。
フィールド名 | 型 | NULL | 備考 |
---|---|---|---|
test_id | 整数 | 不可 | 連番、主キー |
test_name | 文字列 | 不可 | 氏名、インデックス作成、ユニーク制約 |
test_height | 浮動小数 | 可 | 身長 |
[Table("t_test")]
[Index(nameof(Name), IsUnique = true)]
internal class TTestData
{
// ID
[Key]
[Column("test_id")]
public Int32 Id { get; set; }
// 氏名
[Column("test_name")]
public String Name { get; set; } = String.Empty;
// 身長
[Column("test_height")]
public Double? Height { get; set; }
}
internal class TestContext : DbContext
{
// テストテーブル
public DbSet<TTestData> TestData { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
SqliteConnectionStringBuilder stringBuilder = new()
{
DataSource = "Test.sqlite3",
};
using SqliteConnection sqliteConnection = new(stringBuilder.ToString());
optionsBuilder.UseSqlite(sqliteConnection);
}
}
using TestContext testContext = new();
testContext.Database.EnsureCreated();
testContext.TestData.Add(new TTestData { Name = "Fukada Kyoko" });
testContext.TestData.Add(new TTestData { Name = "Eda Ha", Height = 159.0 });
testContext.SaveChanges();
IQueryable<TTestData> queryResult = testContext.TestData.Where(x => x.Name == "Eda Ha" || x.Height < 150.0).OrderBy(x => x.Height);
Where(x => x.Name.Contains("a"))
Where(x => x.Name.Contains("a", StringComparison.OrdinalIgnoreCase))
Where(x => EF.Functions.Like(x.Name, $"%a%"))
IQueryable<TTestData> queryResult = testContext.TestData.Where(x => x.Height == null || x.Height < 150.0);
testContext.TestData.RemoveRange(queryResult);
testContext.SaveChanges();