Обновление требует допустимого UpdateCommand когда переданный набор DataRow с измененными строками

Жест пролистывания ящика не работает, поскольку в новой версии реагирует навигация v3 npm. Нам нужно установить response-native-жест-обработчик npm отдельно. Они создают отдельный пакет npm для touch & amp; обработка жестов и распознавание.

Шаг 1.

npm i react-native-gesture-handler

Шаг 2.

react-native link react-native-gesture-handler

Шаг 3. (необязательно)

Если шаг 2 не работает должным образом, код будет сконфигурирован надлежащим образом

Чтобы завершить установку обработчика реакции-нативного жеста для Android , обязательно внесите необходимые изменения в MainActivity.java:

package com.reactnavigation.example;

import com.facebook.react.ReactActivity;
+ import com.facebook.react.ReactActivityDelegate;
+ import com.facebook.react.ReactRootView;
+ import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;

public class MainActivity extends ReactActivity {

  @Override
  protected String getMainComponentName() {
    return "Example";
  }

+  @Override
+  protected ReactActivityDelegate createReactActivityDelegate() {
+    return new ReactActivityDelegate(this, getMainComponentName()) {
+      @Override
+      protected ReactRootView createRootView() {
+       return new RNGestureHandlerEnabledRootView(MainActivity.this);
+      }
+    };
+  }
}

Никаких дополнительных шагов для iOS не требуется.

Для получения дополнительной информации см. Следующий документ: -

  1. https://reactnavigation.org/docs/en/getting-started.html#installation

  2. https://www.npmjs.com/package/react-native-gesture-handler/v/1.0.0-alpha.34?activeTab=readme [115 ]

  3. https://kmagiera.github.io/react-native-gesture-handler/docs/getting-started.html

15
задан d219 1 September 2018 в 05:03
поделиться

3 ответа

Ошибка является довольно литеральной: Адаптеру нужен допустимый оператор SQL Update. Разработчики набора данных и CommandBuilders генерируют их для Вас, но нет ничего неправильно с изготовлением вручную небольшого количества SQL также.

Так или иначе необходимо будет проверить (отладчик), что оператор Update все еще настроен и каково это на самом деле. Это могло быть больше SQL, чем проблема C#.

Править: инструменты Command Builder только обработают прямую, единственную таблицу, операторы Select. Используйте Соединение, или что-либо полагает, и Вы самостоятельно.

7
ответ дан 1 December 2019 в 00:27
поделиться

От страницы:

Отметьте, Существует ли достаточно информации в основном запросе, InsertCommand, UpdateCommand, и команды DeleteCommand создаются по умолчанию, когда TableAdapter сгенерирован. Если основной запрос TableAdapter является больше, чем единственный оператор SELECT таблицы, возможно, что разработчик не сможет генерировать InsertCommand, UpdateCommand и DeleteCommand. Если эти команды не сгенерированы, можно получить ошибку при выполнении TableAdapter. Метод обновления.

Таким образом от того, что я могу сказать, эти операторы должны были быть сгенерированы. Я использую единственную таблицу.

0
ответ дан 1 December 2019 в 00:27
поделиться

Я столкнулся с той же проблемой, что и Сэм. У меня был рабочий код, который внезапно перестал работать. Я не знал, когда я его написал, но он, должно быть, автоматически выводил команду обновления, а затем прекратил это делать. Возможно, пакет обновлений от MS между версиями, который мы так и не заметили. В любом случае, решение, с которым я столкнулся, использует (в моем случае для oracle) OracleCommandBuilder, который принимает DataAdapter (после вызова fill) в качестве параметра конструктора, а затем вызывает GetUpdateCommand () и назначает его UpdateCommand в DataAdapter.

pseudocode:

DataAdapter da = new DataAdapter(...)
...
da.Fill();
da.UpdateCommand = new OracleCommandBuilder(da).GetUpdateCommand();
...
da.Update();
13
ответ дан 1 December 2019 в 00:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: