如何检查表中是否包含内容

时间:2012-01-12 21:29:27

标签: vb.net sql-server-2008

如何检查表格是否包含内容?老实说,我仍然没有任何初始代码。我是用VB编写代码还是只使用查询?

4 个答案:

答案 0 :(得分:2)

你肯定需要问SQL服务器,为什么不只是查询'SELECT COUNT(*)FROM TABLE'? 你可以把它放在一个存储过程中。

即使您可以使用表名参数化程序并运行exec sql命令。

答案 1 :(得分:2)

我不会使用SELECT COUNT(*),除非您真正关心实际计数 - 这对于大型表来说可能是一项昂贵的操作。如果您关心的是否有行,则更好用:

IF EXISTS (SELECT TOP (1) NULL FROM dbo.MyTable)
BEGIN
    PRINT 'There are rows.';
END
ELSE
BEGIN
    PRINT 'There are no rows.';
END

如果您不需要达到秒,则可以使用DMV进行此类检查。具体做法是:

SELECT SUM(row_count)
    FROM sys.dm_db_partition_stats 
    WHERE [object_id] = OBJECT_ID('dbo.MyTable');

由于飞行中的交易和延期更新,DMV并不总是精确的,但对于球场估计通常是可靠的。

答案 2 :(得分:1)

安装Microsoft SQL Server Management Studio。然后,您可以通过GUI轻松查看表格的内容和结构。

答案 3 :(得分:1)

Dim con = New SqlConnection("Data Source=servername;Initial Catalog=myDb;Integrated Security=True")
Dim cmd = New SqlCommand("SELECT Count(*) FROM myTable", con)
con.Open()
Dim count As Integer = CInt(cmd.ExecuteScalar())
con.Close()