16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
|
|||||||||||
1 | |||||||||||
.NET 3.x SQLite Проверка на выполнение запроса02.08.2016, 01:48. Показов 4608. Ответов 9
Метки нет (Все метки)
SQLite Проверка на выполнение запроса
хотя все правильно , должно вернуть 1 Ну и как проверить на правильность запроса это ExecuteScalar() или что то другое ?
1
|
02.08.2016, 01:48 | |
Ответы с готовыми решениями:
9
Записать результат запроса к БД SQLite в массив SqLite в Windows Phone 7: вывести результаты запроса на экран Проверка записи в таблице sqlite SQLite: проверка таблицы в существующей БД |
Администратор
|
|
02.08.2016, 02:27 | 2 |
GENDALF_ISTARI, метод ExecuteNonQuery возвращает количество строк в таблице которые были затронуты запросом. В приведенном коде нет работы со строками - есть только создание таблицы. Признаком успешного выполнения такого запроса является отсутствие исключения.
P.S. Ловить исключения блоком catch без сохранения информации об исключении плохая практика. В данном случае лучше вообще убрать try/catch.
1
|
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
|
|||||||||||
02.08.2016, 12:00 [ТС] | 3 | ||||||||||
ну если уберу
вернет же 0 , а не 1
0
|
Администратор
|
||||||
02.08.2016, 12:08 | 4 | |||||
GENDALF_ISTARI, метод и так всегда будет возвращать 0 - с try/catch или без него потому что для запроса
CREATE TABLE ... метод ExecuteNonQuery возвращает 0. Он вернет осмысленное число, только для INSERT/UPDATE/DELETE запросов. То есть возвращаемое значение никак не характирует успех или неудачу запроса. Если с запросом что-то не так, то будет сгенерировано исключение. Соответственно метод нужно переписать как-то так:
1
|
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
|
||||||
03.08.2016, 20:05 [ТС] | 5 | |||||
command.ExecuteNonQuery();
так нафик он вообще сдался ?
0
|
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
|
|
04.08.2016, 14:19 [ТС] | 7 |
он что сохраняет исключение
command.ExecuteNonQuery(); //в command пишет чтоб потом реагировал catch { }
0
|
Администратор
|
|
04.08.2016, 14:23 | 8 |
GENDALF_ISTARI, он не сохраняет исключение, а генерирует его. Наличие исключения говорит об ошибке, отсутствие - об успехе. Поэтому после ExecuteNonQuery написано
return true; - эта строка будет выполнена только если не было исключения. Возьми книгу по C# и изучи главу посвященную обработке исключений.
1
|
1643 / 1144 / 171
Регистрация: 23.07.2010
Сообщений: 6,793
|
|
04.08.2016, 14:25 | 9 |
вернет значение первого поля первой строки выборки (со всеми вытекающими, ибо выборка может быть и пустая)
Не по теме:
1
|
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
|
|
04.08.2016, 17:03 [ТС] | 10 |
Понял
0
|
04.08.2016, 17:03 | |
04.08.2016, 17:03 | |
Помогаю со студенческими работами здесь
10
Выполнение SQL запроса Выполнение запроса к DataTable Выполнение запроса с курсором Выполнение запроса в форме Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |