Oracle Database 10g XML SQL [Electronic resources] : Design, Build Manage XML Applications in Java, C, C++ PL/SQL نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Oracle Database 10g XML SQL [Electronic resources] : Design, Build Manage XML Applications in Java, C, C++ PL/SQL - نسخه متنی

Mark V. Scardina, Ben Chang, Jinyu Wang

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
توضیحات
افزودن یادداشت جدید











The Update Application

Now that you understand the mechanics of creating an OCI XML application, we can examine the Update application’s Main function:

#include "xmlupdate.h"
/*---------------------------Main function -----------------------------*/
int main(argc, argv)
int argc;
char *argv[];
{
/* OCI Handles and Variables */
OCIEnv *envhp = (OCIEnv *) 0;
OCIServer *srvhp = (OCIServer *) 0;
OCISvcCtx *svchp = (OCISvcCtx *) 0;
OCIError *errhp = (OCIError *) 0;
OCISession *authp = (OCISession *) 0;
OCIStmt *stmthp = (OCIStmt *) 0;
/* database login information */
text *user=(text *)"SH";
text *password=(text *)"SH";
/*Service Name for DB instance if remote DB */
text *conn=(text *)";
/* Miscellaneous */
boolean tab_exists = TRUE;
ub4 row = 1;
if (argc < 3) {
printf("\nUsage error: xmlupdate \"<SQL/XML Query>\" \"<XPath>\"
\"<value>\"\n\n");
return OCI_ERROR;
}
/* Initialize the environment and allocate handles */
if (init_env_handle(&envhp, &svchp, &errhp, &srvhp, &authp, &stmthp))
{
printf("FAILED: init_env_handle()!\n");
return OCI_ERROR;
}
/* Log on to the server and begin a session */
if (connect_server(srvhp, errhp, svchp, authp, user, password))
{
printf("FAILED: connect_server()!\n");
cleanup(envhp);
return OCI_ERROR;
}
/* Select an xmltype column by defining it to an xmltype instance,
apply some OCIXMLType and unified DOM APIs */
row = 1;
if (select_test_xml(envhp, svchp, errhp, stmthp, row, (text *)argv[1],
(text *)argv[2], (text *)argv[3]))
{
printf("FAILED: select_test_xml()!\n");
disconnect_server(envhp, svchp, errhp, authp, srvhp, stmthp, tab_exists);
return OCI_ERROR;
}
/* Detach from a server and clean up the environment */
disconnect_server(envhp, svchp, errhp, authp, srvhp, stmthp, tab_exists);
return OCI_SUCCESS;
}

Note that the application has the software steps of initialization; connecting to the database; submitting the query; performing the application logic on the results; and cleaning up before exiting. In the following sections, you will see the details of each of these steps as the application is built out.

/ 218