|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.03.2012, 02:13 | #1 |
Новичок
Джуниор
Регистрация: 25.03.2012
Сообщений: 2
|
Обновление только одной строки из базы
Здраствуйте. У меня такой вопрос.
Как обновить только одну строку из базы? Я изменяю информацию в одной из ячеек datagrida через текстбокс, но изначально не знаю какую. А запрос помещаю под кнопку. Как сформировать запрос? Может быть как-то можно получить название колонки с выделенной (или изменённой ячейки)?? может быть можно вот так: UPDATE table SET (name=@p1, ...) WHERE (выделенная ячейка(изменённая) = textbox1.text) тогда как получить информацию об изменённой или выделенной ячейке? |
25.03.2012, 05:31 | #2 |
Форумчанин
Регистрация: 08.09.2010
Сообщений: 880
|
Правило обязательное для исполнения при разработке любой базы данных:
В каждой таблице БД должен быть столбец, который содержит идентификационный номер, однозначно определяющий строку таблицы. Это в большинстве случаев целое число, значение которого автоматически генерит сервер СУБД и значение которого уникально для каждой строки. Тогда не нужно мудрить с тем как определить в какой строке надо сделать обновление. В datagrid (наверное, это DBGrid) данные из базы поставляются через запрос (SELECT). Этим, как правило, занимается компонент с общим названием Query. При условии, что уникальный идентификатор в таблице есть, а datagrid связан с данными из базы через Query, то узнать какая строка должна быть модифицирована в таблице не составит труда. Т.к. автор не привел никакой дополнительной информации (какой язык, какая СУБД, какие и как компоненты для доступа к данным используются), то детальный ответ тоже не получится. |
25.03.2012, 10:33 | #3 |
Новичок
Джуниор
Регистрация: 25.03.2012
Сообщений: 2
|
Пишу на C#. Данные отображаю через DataGrid.
И изначально я не знаю, какую я хочу отредактировать ячейку и в какой строке, а запрос на обновление у меня по кнопке стоит. Поэтому я не знаю как указать в запросе ту строку, в которой изменения произошли. Вот код моего SQl запроса - он обновляет все строки (и они все одинаковые становятся) UPDATE Cart SET Номер_договора = @p2, Фамилия = @p3, Имя = @p4, Отчество = @p5, Дата_рождения = @p6, Адрес_проживания = @p7, Гражданство = @p8, Стаж_работы = @p9, Отдел = @p10, Должность = @p11 А вот фото формы, где я изменяю данные. http://s2.ipicture.ru/uploads/20120325/3n0yxz7U.jpg |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обновление сводных таблиц одной кнопкой! | masterenergy | Microsoft Office Excel | 6 | 02.01.2015 16:32 |
как организовать автоматическое обновление базы | lildare | C# (си шарп) | 0 | 06.10.2011 10:34 |
Builder 6.0 обновление базы | 6AZblJlb | Помощь студентам | 1 | 29.05.2011 16:43 |
Обновление Базы Данных | Владимир123421 | Microsoft Office Access | 1 | 22.04.2011 15:18 |
Запуск только одной копии приложения | Casper-SC | Общие вопросы .NET | 1 | 18.07.2010 02:06 |