На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Работа DataGridView и Sybse , Сохранение даних в базу из DataGridView
    использую VS 2005 C# и базу от Sybase SQl Anywhere 5.0
    создал форму добавил DataGridView, DataSet созданий мастером на основе одной таблици із primary key по полях place=1
    CurrencyId, KindMetal, WeightUnit


    Интересують следуеще:
    1. Почему автоматически не сгенерировались UpdateCommand и DeleteCommand?
    2. Добавил кнопку и обрабативаю собитие нажати кнопки для сохранение даних в таблицу.
    bankMetalCoursesTableAdapter.Update(bankMetalCoursesDataSet); В мастере добавил update UPDATE branch.BankMetalCourses SET PriceUnit = ?
    думаю что не правильно поскольку не знаю как задать параметри для where place = (что пистаь здесь?) .....

    При текущем update при изменении значения поля PriceUnit в DataGridView сохраняю дание при нажати на кнопку и генерирується апдейти для каждой строчки в таблице
    UPDATE branch.BankMetalCourses
    SET PriceUnit=10
    WHERE place=1
    AND CurrencyId=959
    AND KindMetal=1
    AND WeightUnit=1;

    UPDATE branch.BankMetalCourses
    SET PriceUnit=10
    WHERE place=1
    AND CurrencyId=959
    AND KindMetal=1
    AND WeightUnit=2 ;

    .....

    как сделать чтоб сохранялась только измененая строка?

    3. Я би хотел сохранять дание при окончании редактирование строки тоисть обрабативать собитие EndEdit для DataRow. Как в мастерах найти то место где можна всавить код для обработки.

    Понимаю что смешние вопроси но что поделать такой уровень.

    Заранее благодарою
      Не люблю мастеры, но похоже у тебя:
      1. Либо не был выставлен первичный ключ, либо студия не сумела сгенерить тебе код для составного первичного ключа.
      2. Чтобы посмотреть пример -сгенери адаптер для таблицы с первичным ключем, представленным одним полем.
      Цитата kucher @
      как сделать чтоб сохранялась только измененая строка?
      - будут сохраняться только измененные - см. метод GetChanges в DataSet

      Цитата kucher @
      собитие EndEdit для DataRow. Как в мастерах найти то место где можна всавить код для обработки.
      - используй BindingSource для привязок, и подписывайся в нем.

      Цитата kucher @
      Как в мастерах найти то место где можна всавить код для обработки.
      - не используй мастер, быстрее поймешь, как это работает :)
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0226 ]   [ 16 queries used ]   [ Generated: 7.05.24, 21:50 GMT ]