检查UWP中是否存在使用SQLite-PCL的表

New*_*337 8 c# sqlite uwp

我坚持如何检查表alredy是否存在.在我找不到好的例子之前,我一直在寻找但很多次.

我在SQLite上找到的那些不适用于PCL版本..无法理解为什么...所以如果有人有一个好网站去哪里请随意添加它们.

这是我使用过的:http: //blogs.u2u.be/diederik/post/2015/09/08/Using-SQLite-on-the-Universal-Windows-Platform.aspx

https://code.msdn.microsoft.com/windowsapps/Implement-SQLite-Local-8b13a307#content

这是我的代码,我试图检查它,但他唯一检查的路径..存在alwasy存在..当我考虑它时不是一个聪明的解决方案:).

private void LikeItButton_Click(object sender, RoutedEventArgs e)
        {
            var sqlpath = System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Filmdb.sqlite");

            using (SQLite.Net.SQLiteConnection conn =
                new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), sqlpath))
            {
                if (File.Exists(sqlpath))
                {
                    AdMovieID();
                }
                else
                {
                    conn.CreateTable<MovieID>();
                    AdMovieID();
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

Igo*_*lic 7

您可以执行查询:

SELECT name FROM sqlite_master WHERE type='table' AND name='MovieId';
Run Code Online (Sandbox Code Playgroud)

通过做

var tableExistsQuery = "SELECT name FROM sqlite_master WHERE type='table' AND name='MovieId';"
var result = conn.ExecuteScalar<string>(tableExistsQuery);
Run Code Online (Sandbox Code Playgroud)