有没有更好的方法来查明一个数据库表是不是空的,而不是通过在ADO.Net中实际查询它?

问题描述:

This answer建议一种方便的方法来检查数据库中是否存在表。有没有一种类似的方法来检查它是否可能是空的,或者我应该只是用普通的SQL查询表格,找出那里有什么?有没有更好的方法来查明一个数据库表是不是空的,而不是通过在ADO.Net中实际查询它?

+1

看看[这](http://*.com/questions/5630689/select-all-empty-tables-in-sql-server)帮助。虽然我只想用一个简单的查询'SELECT TOP 1 1 FROM TABLE' – CodingYoshi

+0

一种常见的SQL方式---你的意思是不使用master数据库?那么这些[so](http://*.com/questions/167576/check-if-table-exists-in-sql-server) –

+0

@LeiYang“一种常用的SQL方式---你的意思是......”我的意思是只针对我们感兴趣的表编写SQL查询,并用DbCommand以普通的方式执行它,而不是试图为此找到一些维护/元数据ADO.Net API。 – Ivan

你知道表的名字吗?如果是这样,我只是用:

using (var dbConnection = new SqlConnection(connectionString)) 
{ 
    dbConnection .Open(); 
    using (var dbCommand = new SqlCommand("select Count(*) from YourTable", dbConnection)) 
    { 
     return dbCommand.ExecuteScalar() == 0; 
    } 
} 
+0

不会抛出异常,如果不存在? –

+0

另一个问题已经显示了如何查看表格是否存在,这并没有回答Ivan的问题。如果他也需要这样做,他需要先使用先前的答案。上一个答案不显示该表是否为空。 –