Подключитесь к базе данных vertica с помощью odbc в asp.net и верните набор данных.

Я вставил несколько строк в базу данных vertica, используя команду вставки на терминале. Это отображается, когда я читаю запись с помощью команды выбора. Но я не могу видеть запись при подключении к базе данных с использованием соединения ODBC, также я могу найти эту строку при перезапуске vertica.Пожалуйста, помогите мне решить проблему.


person user1578890    schedule 06.08.2012    source источник


Ответы (4)


Вы сделали COMMIT; после того, как вставили строки? Это простая вещь, но я сам много раз упускал из виду в прошлом.

person Bobby W    schedule 06.08.2012

Чтобы немного уточнить ответ Бобби В.
Когда вы выполняете вставку, он покажет данные для вашего текущего сеанса. Это позволяет пользователю выполнять операции и использовать «временные» данные, не влияя/искажая то, что делают другие люди. Это данные на основе сеанса. Вот почему вы можете вставлять и просматривать данные, но при подключении из 2-го источника не можете их увидеть.

Чтобы «зафиксировать» данные в базе данных, вам нужно выполнить оператор COMMIT;, как упоминал Бобби В.

Неспособность выдать COMMIT; — это то, что я также упускал из виду несколько раз.

person QuinnG    schedule 07.08.2012

Чтобы уточнить, вы можете увидеть строки после перезапуска? Вы подключаетесь к базе данных как один и тот же пользователь из ODBC и vsql?

person Joe    schedule 06.08.2012

По умолчанию уровень ISOLATION Vertica находится в режиме READ COMMITTED, что означает, что другие сеансы только читают данные, которые являются COMMITTED. Если вы вставили, но не зафиксировали, на этом уровне другие сеансы не могут прочитать вставленные вами данные.

person Joseph    schedule 19.01.2013