0

我已经在终端上使用 insert 命令在 vertica 数据库中插入了一些行。它显示当我使用 select 命令读取记录时。但是当我使用 ODBC 连接连接到数据库时我无法看到记录,我也能够在重新启动时找到该行vertica。请帮我解决问题。

4

4 回答 4

2

你是COMMIT;在插入行之后吗?这是一件简单的事情,但我过去曾多次忽视自己。

于 2012-08-06T18:41:33.990 回答
1

在 Bobby W 的回应之外进行详细说明。
当您执行插入时,它将向您的当前会话显示数据。这允许用户执行操作并使用“临时”数据,而不会影响/破坏其他人正在做的事情。它是基于会话的数据。这就是为什么您可以插入并查看数据,但是从第二个来源连接时,无法看到它。

要将数据“提交”到数据库,您需要发出COMMIT;Bobby W 提到的语句。

未能发出COMMIT;是我也多次忽略的事情。

于 2012-08-07T00:25:04.560 回答
0

默认情况下,Vertica ISOLATION 级别为 READ COMMITTED 模式,这意味着其他会话只读已提交的数据。如果你已经插入但没有提交,在这个级别,其他会话无法读取你插入的数据

于 2013-01-19T13:03:56.033 回答
0

为了澄清,您可以在重新启动后看到这些行吗?您是否以来自 ODBC 和 vsql 的同一用户身份连接到数据库?

于 2012-08-06T14:44:04.987 回答