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