2017-03-10 9 views
3

他の接続でSELECT操作を実行できるトランザクション内のテーブルでLOCK WRITEを実行するにはどうすればよいですか?AWS Redshift LOCK WRITEとREAD NOT

これを実行する:

BEGIN; 
LOCK TABLE my_table; 
<very long commands> 

他の接続には、私は読書からそれらを妨げることなく、書いている間、書き込みから他人を妨げている私は何を達成したいSELECT COUNT(*) FROM my_table;

のようなSELECT操作を実行することはできません。

+0

[同時書き込み操作の管理](http://docs.aws.amazon.com/redshift/latest/dg/c_Concurrent_writes.html) –

答えて

1

トランザクションブロック内のテーブルにLOCKを置くと、他のユーザー/セッションがテーブルの読み書きを許可されません。
トランザクションを読み取り専用にする場合は、以下の構文を使用できます。私が悪いの仮定を行った場合

BEGIN [READ ONLY]; 
<very long commands> 

コメントと私は私の答えを再フォーカスますしてください。

+1

私が達成したいのは、 「書く」ことができます。 – Drico

関連する問題