📄 interbase.html
字号:
versions are supported also.</P>
<P>For more details see <A
href="../HowTo/connect.html">How To - Connecting to databases</A>, <A
href="../OnLineDoc/Connection_Usage.html">SAConnection object</A>, <A
href="../OnLineDoc/Connection_Connect.html">SAConnection::Connect</A>.</P>
<P> </P>
<H3><A
name="Transaction isolation levels">Transaction isolation
levels</A> </H3>
<P>SQL-92 defines four isolation levels, all of
which are supported by SQLAPI++:</P>
<UL>
<LI>Read uncommitted (the lowest level where
transactions are isolated just enough to ensure that physically
corrupt data is not read)
<LI>Read committed
<LI>Repeatable read
<LI>Serializable (the highest level, where
transactions are completely isolated from one another)</LI></UL>
<P>SQLAPI++ maps different isolation levels on
<STRONG>InterBase</STRONG> server in the following way:</P>
<P> <STRONG
>SA_ReadUncommitted</STRONG> = isc_tpb_read_committed,
isc_tpb_rec_version<BR><STRONG> SA_ReadCommitted</STRONG> = isc_tpb_read_committed,
isc_tpb_no_rec_version<BR><STRONG> SA_RepeatableRead</STRONG> =
isc_tpb_consistency<BR><STRONG> SA_Serializable</STRONG> =
isc_tpb_concurrency</P>
<P>For more details see <A
href="../OnLineDoc/Connection_setIsolationLevel.html">SAConnection::setIsolationLevel</A>.</P>
<P> </P>
<H3><A
name="Working with Long or Lob(CLob, BLob) data">Working with Long or Lob(CLob,
BLob) data</A> </H3>
<P>
SQLAPI++ supports four types for working with
Long or Lob(CLob, BLob) data:</P>
<P>
<TABLE border=1 cellPadding=1 cellSpacing=1 style="WIDTH: 100%"
width=100%>
<TR bgColor=navy>
<TD><FONT color=white
style="BACKGROUND-COLOR: #000080">Name</FONT></TD>
<TD><FONT color=white
style="BACKGROUND-COLOR: #000080">C
enum constant</FONT></TD>
</TR>
<TR>
<TD>LongBinary</TD>
<TD>SA_dtLongBinary</TD>
</TR>
<TR>
<TD>LongChar</TD>
<TD>SA_dtLongChar</TD>
</TR>
<TR>
<TD>BLob (Binary Large object)</TD>
<TD>SA_dtBLob</TD>
</TR>
<TR>
<TD>CLob (Character Large object)</TD>
<TD>SA_dtCLob</TD>
</TR></TABLE></P>
<P>The table below shows how SQLAPI++ data
types correspond with servers original data types:</P>
<P><EM>SA_dtLongBinary</EM> <= > BLOB, subtype 0<BR><EM>SA_dtLongChar</EM>
<= >
BLOB, subtype 1<BR
><EM>SA_dtBLob</EM> = > BLOB, subtype
0<BR><EM>SA_dtCLob
</EM>=> BLOB, subtype
1</EM></P>
<P>
For more details see <A href="../HowTo/blobs.html">How To - Working with Long or Lob(CLob, BLob) data</A></P>
<P> </P>
<H3><A
name="Returning output parameters">Returning output
parameters</A> </H3>
<p>If <STRONG>InterBase</STRONG>
stored procedure returns only one row of
output parameters (the most common case), you can get output
parameters' values immediately after calling <A href="../OnLineDoc/Command_Execute.html" >SACommand::Execute</A>
using
appropriate <A href="../OnLineDoc/Param.html" >SAParam</A>
objects.</p>
<P>In <STRONG>InterBase</STRONG>
stored procedures can also
return several rows of output parameters. In this case you should perform
a select from a procedure to return them as result set.</P>
<P>For more details see <A
href="../OnLineDoc/Command_Execute.html" >SACommand::Execute</A>,
<A href="../OnLineDoc/Param_Usage.html" >SAParam
object</A>, <A
href="../HowTo/return_param.html" >How To - Returning Output Parameters</A>.</P>
<P> </P>
<H3><A name="Cancelling queries">Cancelling
queries</A> </H3>
<P><STRONG>InterBase</STRONG> does not support cancelling
queries.</P>
<P> </P>
<H3><A
name="Connection and command options">Connection and command
options</A> </H3>
<P>A server specific option can be related with a command or with a
connection. A connection related option must be specified in a
<A href="../OnLineDoc/Connection.html" >SAConnection</A>
object. A command related option
may be specified in either <A href="../OnLineDoc/Connection.html" >SAConnection</A>
object or <A href="../OnLineDoc/Command_Usage.html" >SACommand</A>
object. </P>
<P>Specific options for <STRONG> InterBase</STRONG>:</P>
<P>
<TABLE border=1 cellPadding=5 width=100%>
<TBODY>
<TR bgColor=#000094>
<TD width=17%>
<P><STRONG><FONT color=white face="">Option name</FONT>
</STRONG></P></TD>
<TD>
<P><STRONG><FONT color=white face=""> Description</FONT>
</STRONG></P></TD></TR>
<TR>
<TD>
<P align=center><STRONG><STRONG><STRONG>SQLDialect</STRONG></STRONG>
</STRONG></P></TD>
<TD>
<P>Declares the SQL Dialect for
database access.<BR><STRONG>Command
related.</STRONG><BR>Valid values:
see InterBase documentation.<BR>
Default value is "3".</P></TD></TR>
<TR>
<TD><STRONG><STRONG>
<P align=center><STRONG><STRONG>
<STRONG><STRONG>isc_dbp_lc_ctype</STRONG></STRONG></STRONG>
</STRONG></P></STRONG>
</STRONG></TD>
<TD>
<P>Specifies the character set to
be utilized. For more information see InterBase
documentation.<BR><STRONG>Connection related.</STRONG> Should be
specified before actual connection is made.<BR
>Valid values: String containing
character set name, see InterBase documentation.<BR
>
Default value: see InterBase documentation.</P></TD></TR>
<TR>
<TD>
<P align=center><STRONG><STRONG>
<STRONG><STRONG>isc_dbp_sql_role_name</STRONG></STRONG></STRONG>
</STRONG></P>
<TD>
<P>Declares role name that should
used for connection. For more information see InterBase
documentation.<BR><STRONG>Connection related.</STRONG> Should be
specified before actual connection is made.<BR
>Valid values: see InterBase
documentation.<BR>
Default value: see InterBase documentation.</P>
<TR>
<TD><STRONG><STRONG>
<P><STRONG>isc_dpb_num_buffers</STRONG></P></STRONG>
</STRONG></TD>
<TD>
<P>Declares the number of database cache buffers to
allocate for use with the database. For more information
see InterBase documentation.<BR><STRONG>Connection related</STRONG>. Should be
specified before actual connection is made.<BR
>Valid values: 10-255, see InterBase
documentation.<BR>Default value:
75, see InterBase documentation.</P></TD></TR>
<TR>
<TD><STRONG><STRONG>
<P align=center><STRONG>CommitRetaining</STRONG></P></STRONG>
</STRONG></TD>
<TD>
<P>Determines which function (<EM
>isc_commit_transaction()</EM> or <EM
>isc_commit_retaining()</EM>)
SQLAPI++ calls to commit transactions.<BR
><EM>isc_commit_transaction()</EM> writes transaction
changes permanently to a database, closes the result set
associated with the transaction, and frees system
resources assigned to the transaction for other uses.
Active result sets are not preserved.<BR><EM>isc_commit_retaining()</EM>
writes all pending changes to the database, ends the
current transaction without closing its record stream
and cursors and without freeing its system resources,
then starts a new transaction and assigns the existing
record streams and system resources to the new
transaction. Active result sets are preserved. <BR
>For more information see InterBase
documentation (<EM>isc_commit_retaining()</EM> and <EM>isc_commit_transaction()</EM> functions). <BR
><STRONG>Connection related.</STRONG> Should
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -