增加instant client for osx 64位版本
diff --git a/sdk/include/sqlkpr.h b/sdk/include/sqlkpr.h
new file mode 100755
index 0000000..507c2ef
--- /dev/null
+++ b/sdk/include/sqlkpr.h
@@ -0,0 +1,134 @@
+/*
+ * $Header: sqlkpr.h 25-aug-2005.21:32:24 subanerj Exp $ 
+ */
+
+/* Copyright (c) 1994, 2005, Oracle. All rights reserved.  */
+/*
+   NAME
+     sqlkpr.h - SQLlib K&R PRototypes
+   DESCRIPTION
+     Defines k&r prototypes for externalized SQLLIB functions used in 
+     conjunction with OCI
+   PUBLIC FUNCTION(S)
+     sqllda: Get Logon Data Area for connection
+     sqlld2: Logon Data area form 2 -- with host name
+     sqlcda: Cursor data area from result set cursor
+     sqlcur: PCC cursor from cursor data area
+
+   NOTES
+
+   MODIFIED   (MM/DD/YY)
+    subanerj   08/25/05 - ANSI prototypes; miscellaneous cleanup
+    apopat     05/08/02 - [2362423] MVS PE to make lines shorter than 79
+    apopat     09/20/00 - [1356099] Clarification on use of sqllda
+    lvbcheng   01/16/97 - Fix for b2
+    jbasu      02/08/95 - Add prototypes for new thread entry pts
+    jbasu      09/21/94 - Update sqlcda,sqlcur; move sqlrcn,sqlfcn to sqlefn.h
+    jbasu      09/13/94 - Move XA prototypes to sqlefn.h
+    jbasu      08/16/94 - use OCI cda_def type from ocidfn.h instead of sqlold
+    jbasu      08/16/94 - Creation
+*/
+
+#ifndef SQLKPR
+#  define SQLKPR
+
+#ifndef OCIDFN
+#  include <ocidfn.h>
+#endif
+
+#define SQLLDAGetCurrent(arg1, arg2) sqlldat(arg1, arg2)
+
+void sqllda(Lda_Def *lda);
+   /* LDA version 1.   Creates an lda for use in OCI programs.
+   **   Assumes that we are logged on through an embedded SQL statement.
+   **   The lda is filled in using the connect information from the most 
+   **   recently executed embedded SQL statement.  So the ONLY way to use
+   **   sqllda() is to call sqllda() immediately after the 
+   **   EXEC SQL CONNECT... statement.
+   */
+
+
+void sqlldat(dvoid *sqluga, Lda_Def *lda);
+  /* Thread-safe version of sqllda.  Takes an extra parameter sqluga, which is 
+   * the SQLLIB runtime context. 
+   */
+
+/* **************************************************************************/
+/* ** SQLLD2 ** "sqlld2" is an extended version of                          */
+/*              the sqllda function used to pass a connection to OCI.       */
+/*              "sqlld2" can be used at any time to set up an "lda" for use */
+/*              by OCI.  It does not need to called immediately after a SQL */
+/*              statement using the particular connection (typically the    */
+/*              CONNECT itself).                                            */
+/****************************************************************************/
+
+#define SQLDAGetNamed(arg1, arg2, arg3, arg4) sqlld2t(arg1, arg2, arg3, arg4) 
+
+void sqlld2(Lda_Def *lda, text *hname, sb4 *hnamel);
+   /* LDa version 2.  Creates an lda for use in OCI programs.  The difference
+   **      between sqlld2 and sqllda is that sqlld2 allows specification of
+   **      the database host name to determine the connection to use in
+   **      establishing the lda. 
+   **  hname - buffer containing the "logical" name for this connection.  This
+   **            would be the same identifier used in an AT clause in an
+   **            embedded SQL statement.  A null ptr indicates the "default"
+   **            database used when there is no AT clause in a SQL statement.
+   **  hnamel - length of buffer containing hname.
+   */
+
+void sqlld2t(dvoid *sqluga, Lda_Def *lda, text *hname, sb4 *hnamel);
+   /* Thread-safe version of sqlld2. Takes an extra parameter sqluga, which is 
+    * the SQLLIB runtime context. 
+    */ 
+
+#define SQLCDAFromResultSetCursor(arg1, arg2, arg3, arg4) \
+        sqlcdat(arg1, arg2, arg3, arg4)
+
+void sqlcda(/*_ Cda_Def *cda, dvoid *cur, sword *retval _*/);
+/* 
+ * Name: sqlcda() - SQLlib result set cursor to a Cursor Data Area in OCI
+ * Description: Translates a result set cursor in SQLLIB to a cursor data area
+ *              in OCI.  Both of these structs should have been previously 
+ *              created/allocated.
+ * Input   : cur    -pointer to a result set cursor struct allocated thru Pro*
+ * Output  : cda    -pointer to destination cursor data area in OCI
+ *           retval -Return value: 0 if no error,SQLLIB error number otherwise
+ *
+ * Notes: 1.In case of an error, the v2_rc and rc fields of the cda are
+ *          populated with the negative and positive error codes respectively.
+ *        2.The 'rows processed count' in the cda structure is NOT populated
+ *          in this routine.  This field is set to the correct value only
+ *          AFTER a fetch is done in OCI using the cda. Same
+ *          comment applies to other cda fields like the function type.
+ * ===========================================================================
+ */
+void sqlcdat(/*_ dvoid *sqluga, Cda_Def *cda, dvoid *cur, sword *retval _*/);
+ /* Thread-safe version of sqlcda().  Takes an extra parameter sqluga, which 
+  * is the SQLLIB runtime context. 
+  */ 
+
+#define SQLCDAToResultSetCursor(SQL_SINGLE_RCTX, arg1, arg2, arg3) \
+        sqlcurt(arg1, arg2, arg3, arg4) 
+
+void sqlcur(/*_ dvoid *cur, Cda_Def *cda, sword *retval _*/);
+/*
+ * Name: sqlcur() - SQLlib result set CURsor from an oci cursor data area
+ * Description: Translates a cursor data area in OCI to a result set cursor
+ *              in SQLLIB.  Both of these structs should have been previously
+ *              created/allocated.
+ * Input   : cda    - pointer to a cursor data area in OCI
+ * Output  : cur    - pointer to a result set cursor struct (previously 
+ *                    allocated thru PCC)
+ *           retval - Return value: 0 if no error, error code otherwise.
+ * Notes   :The sqlca structure for PCC is NOT updated by this routine.  This 
+ *          structure gets populated (with error code, rows fetched count etc)
+ *          only AFTER a database operation is performed through PCC using the
+ *          translated cursor.
+ *============================================================================
+ */
+void sqlcurt(/*_ dvoid *sqluga, dvoid *cur, Cda_Def *cda, sword *retval _*/);
+ /* Thread-safe version of sqlcur().  Takes an extra parameter sqluga, which 
+  * is the SQLLIB runtime context. 
+  */ 
+
+#endif /* SQLKPR */