25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
||||||||||||||||
1 | ||||||||||||||||
Как внести изменение в поле для конкретной строки28.03.2012, 13:33. Показов 3138. Ответов 17
Метки нет (Все метки)
Есть обычная форма Supplier с датагридом, данные в который загружаются так: в коде формы этот код
0
|
28.03.2012, 13:33 | |
Ответы с готовыми решениями:
17
Подсчет количества одинаковых значений по определенным столбцам (в пределах одной конкретной строки) и вывод в поле Поиск конкретной ячейки, которая находится на пересечении конкретного столбца и конкретной строки Можно ли в Word задать поле (отступ) для конкретной буквы (слова)? Dataset (после изменение конфигурации БД не могу внести изменение) |
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
||||||
28.03.2012, 13:49 | 2 | |||||
значение - значение ключевого поля в той же строке где надо изменить значение поля Status
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
||||||
28.03.2012, 13:50 [ТС] | 3 | |||||
Мне кажется, что ошибка в том, что сначала надо выбрать строки, в которых будет выполняться Update. Я подправил код, но запрос не выполняется:
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
||||||
28.03.2012, 13:52 | 4 | |||||
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
|
28.03.2012, 13:54 [ТС] | 5 |
Понял.
И только сейчас дошло: ведь я могу значение поля менять не только с False на True, но и наоборот. Т.е, надо сначала сделать проверку, какое значение у поля, а потом присвоить ему противоположное значение. Опять делать запрос и с помощью конструкции If...Then это дело реализовывать?
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
||||||
28.03.2012, 13:55 | 6 | |||||
смысл в том, что это:
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
|
28.03.2012, 13:56 [ТС] | 7 |
Ага, буду пробовать, просто я не успеваю менять коды и отвечать на форуме
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
|
28.03.2012, 13:59 | 8 |
вот, полистай брошюрку из вложения. Там, правда, для MS SQL server но с аксесом различия синтаксиса минимальны.
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
||||||
28.03.2012, 14:00 [ТС] | 9 | |||||
Я сейчас так сделал
Добавлено через 51 секунду Где ссылка?
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
|
28.03.2012, 14:01 | 10 |
Добавил вложение...
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
|
28.03.2012, 14:05 | 11 |
а в самой базе смотрел? А то у тебя в процедуре GetDT по запросу на Update возвращать нечего. По идее DA пустой останется. Базу смотри через аксес. Вроде должно отработать все
1
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
||||||
28.03.2012, 16:46 [ТС] | 12 | |||||
Спасибо, мануал будет полезен надолго, буду разбираться
Добавлено через 2 часа 38 минут
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
|
28.03.2012, 17:06 | 13 |
немного не понял, а в самой БД поле IdSupplier допускает пустые значения?
Просто, если ты пользуешься им как ключом, это нежелательно, т.к. не обеспечивается уникальность значений в данном поле. И еще: результаты запросов показываются в DataGridView, надо понимать, имена полей тоже из БД в шабках столбцов DGV пишутся. Почему бы не почитать про псевдонимы (Alias). Так оно конечному юзеру будет приятнее. Или в БД столбцы поименовать кириллицей (даже с пробелами). А в запросах обязательно окружай имя поля с пробелами в []. Тогда алиасы не нужны будут и в то же время нормальные имена столбцов поимеешь в DGV.
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
|
28.03.2012, 17:14 [ТС] | 14 |
Почему такой вывод? Это поле - автосчётчик, в коде это поле обозначено как DataGridView1.CurrentRow.Cells(0) (т.е. первое поле таблицы), а вот булево поле Status может быть равным 0, это поле в коде обозначено как DataGridView1.CurrentRow.Cells(2) (т.е. третье поле в таблице)
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
||||||||||||||||
28.03.2012, 19:01 | 15 | |||||||||||||||
а, ну да. Не досмотрелся. Просто привык уже индексы столбцов извлекать из них самих:
А когда столбцы приходят в пустой DGV, то имя столбца в нем присваивается по имени столбца с данными, прилетевшими из БД. Но на стадии разработки этих столбцов нет! Зато зная, с каким именем прилетит он из БД, можно и обратиться по имени:
Кроме того, читая мануал по SQL ты мог заметить, что порядок следования и количество столбцов в выборке можно регулировать самим запросом: вместо * (все столбцы в порядке их следования в таблице БД) можно написать:
Если хочешь, попробуй этот способ - потом не откажешься
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
|
28.03.2012, 19:44 [ТС] | 16 |
Попробовал я вставить
и выдало ошибку в дэбуге, когда закрыл дочернюю форму, что Column named IdSupplier cannot be found. Хотя, конечно же, столбец под таким названием есть. Но буду иметь в виду такой метод обращения к полю.
0
|
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
|
|
28.03.2012, 19:56 | 17 |
а попробуй после выборки запроси циклом имена столбцов. только Name.
Странная ошибка сама по себе... я именно так всегда стараюсь обращаться.
0
|
25 / 26 / 4
Регистрация: 12.12.2011
Сообщений: 197
|
|||||||||||
29.03.2012, 06:53 [ТС] | 18 | ||||||||||
Ошибка вот в чём была: я делал запрос к БД в виде
0
|
29.03.2012, 06:53 | |
29.03.2012, 06:53 | |
Помогаю со студенческими работами здесь
18
Добавление значения для конкретной строки Изменение строки в поле Как переставить цифры даты так чтобы её можно внести в поле DATE mysql? Изменение строки в табличном поле Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |