检查任何数据库表是否有任何行

Kur*_*ula 1 sql-server entity-framework linq-query-syntax

我试图了解如何使用实体框架检查数据库中的任何表是否有数据。我可以检查一张表,但如何一次检查所有表?我们有 ef6 的选择吗?

using (var db = new CreateDbContext())
{
    if(!db.FirstTable.Any())
    {
        // The table is empty
    }
}
Run Code Online (Sandbox Code Playgroud)

任何有关如何循环实体的指针都会有所帮助。

Sea*_*nge 5

这是使用 t-sql 执行此操作的一种方法。在大多数系统上这应该是闪电般的速度。不到一秒就返回到我们的 ERP 数据库中。它指出 15,000 多个分区统计数据中有 4210 亿行。

select sum(p.row_count)
from sys.dm_db_partition_stats p
join sys.objects o on o.object_id = p.object_id
where o.type not in ('S', 'IT') --excludes system and internal tables.
Run Code Online (Sandbox Code Playgroud)