to_date - Equivalente de PostgreSQL de SQLServer''s NoLock
to_date postgresql example (2)
Investigué un poco y parece que la sugerencia de NOLOCK en el Servidor SQL es más o menos la misma que la del nivel de aislamiento de la transacción READ UNCOMMITTED. En PostgreSQL, puede configurar READ UNCOMMITTED, pero actualiza silenciosamente el nivel para LEER COMPROMETIDO. LEER SIN COMPROMISO no es compatible.
Documentación de PostgreSQL 8.4 para aislamiento de transacciones: http://www.postgresql.org/docs/8.4/static/transaction-iso.html
En SQLServer, puede usar la sintaxis "(nolock)" para asegurarse de que la consulta no bloquee la tabla o que no sea bloqueada por otras consultas que bloquean la misma tabla. p.ej
SELECT * FROM mytable (nolock) WHERE id = blah
¿Cuál es la sintaxis equivalente en Postgres? Encontré documentación sobre el bloqueo de tablas en PG ( http://www.postgresql.org/docs/8.1/interactive/sql-lock.html ), pero todo parece orientado a cómo bloquear una mesa, no a garantizar que no esté bloqueada .
Un SELECT no bloquea ninguna tabla en PostgreSQL, a menos que desee un bloqueo:
SELECT * FROM tablename FOR UPDATE;
PostgreSQL utiliza MVCC para minimizar la contención de bloqueo para permitir un rendimiento razonable en entornos multiusuario. Los lectores no entran en conflicto con escritores ni otros lectores.