Как проверить, содержит ли таблица содержимое - PullRequest
2 голосов
/ 13 января 2012

Как проверить, есть ли в таблице содержимое?Честно говоря, у меня до сих пор нет никаких начальных кодов для этого.Кодировать это в VB или просто использовать запрос?

Ответы [ 4 ]

2 голосов
/ 13 января 2012

Я бы не стал использовать 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 голосов
/ 13 января 2012

вам определенно нужно спросить сервер SQL, так почему бы просто не запросить «SELECT COUNT (*) FROM TABLE»), который можно поместить в хранимую процедуру.введите имя и выполните команду exec sql.

1 голос
/ 13 января 2012
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()
1 голос
/ 13 января 2012

Установить Microsoft SQL Server Management Studio.Затем вы можете легко просматривать содержимое и структуру ваших таблиц через графический интерфейс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...