13.07.2015 Views

SAS/ACCESS 9.2 for Relational Databases: Reference, Fourth Edition

SAS/ACCESS 9.2 for Relational Databases: Reference, Fourth Edition

SAS/ACCESS 9.2 for Relational Databases: Reference, Fourth Edition

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>SAS</strong>/<strong>ACCESS</strong> Interface to ODBC 4 Naming Conventions <strong>for</strong> ODBC 677Isolation LevelRU (read uncommitted)V (versioning)DefinitionAllows dirty reads, nonrepeatable reads, and phantomreads.Does not allow dirty reads, nonrepeatable reads, orphantom reads. These transactions are serializable buthigher concurrency is possible than with the serializableisolation level. Typically, a nonlocking protocol is used.Here are how the terms in the table are defined.Dirty reads A transaction that exhibits this phenomenon has very minimalisolation from concurrent transactions. In fact, it can seechanges that are made by those concurrent transactions evenbe<strong>for</strong>e they commit.For example, suppose that transaction T1 per<strong>for</strong>ms anupdate on a row, transaction T2 then retrieves that row, andtransaction T1 then terminates with rollback. Transaction T2has then seen a row that no longer exists.NonrepeatablereadsIf a transaction exhibits this phenomenon, it is possible that itmight read a row once and if it attempts to read that row againlater in the course of the same transaction, the row might havebeen changed or even deleted by another concurrenttransaction. There<strong>for</strong>e, the read is not (necessarily) repeatable.For example, suppose that transaction T1 retrieves a row,transaction T2 then updates that row, and transaction T1 thenretrieves the same row again. Transaction T1 has now retrievedthe same row twice but has seen two different values <strong>for</strong> it.Phantom reads When a transaction exhibits this phenomenon, a set of rowsthat it reads once might be a different set of rows if thetransaction attempts to read them again.For example, suppose that transaction T1 retrieves the set ofall rows that satisfy some condition. Suppose that transactionT2 then inserts a new row that satisfies that same condition. Iftransaction T1 now repeats its retrieval request, it sees a rowthat did not previously exist, a phantom.UPDATE_ISOLATION_LEVEL= S | RR | RC | VThe ODBC driver manager supports the S, RR, RC, and V isolation levels definedin the preceding table.Naming Conventions <strong>for</strong> ODBCFor general in<strong>for</strong>mation about this feature, see Chapter 2, “<strong>SAS</strong> Names and Support<strong>for</strong> DBMS Names,” on page 11.Because ODBC is an application programming interface (API) rather than adatabase, table names and column names are determined at run time. Since <strong>SAS</strong> 7,table names and column names can be up to 32 characters long. <strong>SAS</strong>/<strong>ACCESS</strong>Interface to ODBC supports table names and column names that contain up to 32characters. If DBMS column names are longer than 32 characters, <strong>SAS</strong> truncates themto 32 characters. If truncating a column name would result in identical names, <strong>SAS</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!