2013-10-24 63 views
0

我使用本地数据库(在windows phone的独立存储),在我的Windows手机应用程序。 我在检查数据库是否为空的情况下,我必须采取相应的措施。 下面的代码显示了我的数据库的声明,如何检查数据库在windows phone中是否为空?

using(MyDataContext db = new MyDataContext(strConnectionString)) 
{ 
    if (db.DatabaseExists() == false) 
     { 
     db.CreateDatabase(); 
     } 
} 

我应该如何检查我的数据库是空的?

+0

没有现成可用的方法。您可以尝试遍历表格并检查内容。或者检查数据库文件大小。 – oleksii

+0

空数据库是什么意思?表中没有表或没有数据? – evhen14

回答

0

您可以在表检查的项目数:

using(MyDataContext db = new MyDataContext(strConnectionString)) 
{ 
    if (db.DatabaseExists() == false) 
     { 
     db.CreateDatabase(); 
     } 

    if(db.Table1.Count() == 0) MessageBox.Show("Table is empty"); 

} 

你也可以执行一个查询来获取表的列表:

using (SqlConnection connection = new SqlConnection(strConnectionString)) 
{ 
    connection.Open(); 
    DataTable schema = connection.GetSchema("Tables"); 
    List<string> TableNames = new List<string>(); 
    foreach (DataRow row in schema.Rows) 
    { 
     TableNames.Add(row[2].ToString()); 
    } 

    if(TableNames.Count == 0) MessageBox.Show("No table exists in the database."); 
}