tsgDataSet.Учётные_записиDataTable myУчётные_записиDataTable = new tsgDataSet.Учётные_записиDataTable();
string row_count = myУчётные_записиDataTable.Rows.Count.ToString();
Подсчёт количества строк в таблице
Нужно подсчитать количество строк в таблице делаю так:
Код:
В итоге всегда получется 0. Пытался считать столбцы, всё ок.
Код:
SELECT COUNT(*) FROM MyTable
Запросом к базе-это понятно. Я хочу понять, почему не работает мой вариант.
Цитата: b00B1uK
Запросом к базе-это понятно. Я хочу понять, почему не работает мой вариант.
Потому что набор данных нужно заполнять методом Fill, но тем самым ты скачаешь ВСЮ таблицу на клиента.
Не могу создать SqlConnection, обо имя сервера B00B1UK-ПК\SQLEXPRESS.
Ругается, что нераспознанная управляющая последовательность, а именно указывает на первую букву после слеша. Как решить?
Пробова localhost,SQLEXPRESS, B00B1UK-ПК ни как не работает.
Вопрос снят.
Код:
SqlConnection login_conect = new SqlConnection("Data Source=B00B1UK-ПК\\SQLEXPRESS;Initial Catalog=tsg;Integrated Security=True");
login_conect.Open();
SqlCommand login_comand = login_conect.CreateCommand();
login_comand.CommandText = "SELECT COUNT(*) FROM dbo.Учётные_записи";
int row_count = login_comand.ExecuteNonQuery();
login_conect.Open();
SqlCommand login_comand = login_conect.CreateCommand();
login_comand.CommandText = "SELECT COUNT(*) FROM dbo.Учётные_записи";
int row_count = login_comand.ExecuteNonQuery();
Теперь row_count всегда равен -1.
Код:
SqlConnection login_conect = new SqlConnection("Data Source=B00B1UK-ПК\\SQLEXPRESS;Initial Catalog=tsg;Integrated Security=True");
login_conect.Open();
SqlCommand login_comand = login_conect.CreateCommand();
login_comand.CommandText = "SELECT COUNT(*) FROM dbo.Учётные_записи";
int row_count = (int)login_comand.[COLOR=Red]ExecuteScalar[/COLOR]();
login_conect.Open();
SqlCommand login_comand = login_conect.CreateCommand();
login_comand.CommandText = "SELECT COUNT(*) FROM dbo.Учётные_записи";
int row_count = (int)login_comand.[COLOR=Red]ExecuteScalar[/COLOR]();
Далее мне нужно выбрать все элементы логина, делаю:
Код:
login_comand.CommandText = "SELECT Логин FROM dbo.Учётные_записи";
login_comand.CommandType = CommandType.Text;
SqlDataReader loginDataReader = login_comand.ExecuteReader();
login_comand.CommandType = CommandType.Text;
SqlDataReader loginDataReader = login_comand.ExecuteReader();
Пытаюсь обратиться через loginDataReader.GetString(0), ошибка : Недопустимая попытка чтения при отсутствии данных.
Запрос точно верен.
Код:
loginDataReader.Read();
вызвать. Если надо всё прочитать, то делаешь это в цикле
Код:
while (loginDataReader.Read())
{
//тут работаешь с данными
}
{
//тут работаешь с данными
}