⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timeout_handler.c

📁 sybase linux or unix develope library package
💻 C
字号:
#include <stdio.h>#include <ctpublic.h>/* The Client-Library error and message handler */CS_RETCODE ctlib_client_msg_handler(ctx, conn, client_msgtxt)CS_CONTEXT 	*ctx;CS_CONNECTION 	*conn;CS_CLIENTMSG 	*client_msgtxt;{	int  ans = 0;		fprintf(stderr, "\nOPEN CLIENT ERROR MESSAGE");	fprintf(stderr, "\nnumber: layer (%ld), origin (%ld)",                 CS_LAYER(client_msgtxt->msgnumber),                 CS_ORIGIN(client_msgtxt->msgnumber));	fprintf(stderr, "\ntext:\n%s", client_msgtxt->msgstring);	if (client_msgtxt->osstringlen > 0)	{  	   fprintf(stderr, "\nOS error : %s", client_msgtxt->osstring);	}	/* Handle timeout errors : 63 is 'Read from SQL Server timed out'. */	if (CS_NUMBER(client_msgtxt->msgnumber) == 63 )	{		printf("\n\n");		printf("A TIMEOUT ERROR OCCURRED. Please choose ");		printf("one of the following options:\n");		printf("1. Cancel only this command and continue processing. \n");		printf("2. Continue to wait for another timeout period. \n");		printf("\n\n Enter choice: ");		scanf("%d",&ans);		if ( ans == 1 )		{			ct_cancel(conn, NULL, CS_CANCEL_ATTN);			return CS_SUCCEED ;		}		else		{			printf("Waiting for another timeout period .. \n");			return CS_SUCCEED ;		}	} /* End of timeout handling section */return(CS_SUCCEED);}/* Routine to handle errors and messages from the server */CS_RETCODE ctlib_server_msg_handler(conn, cmd, srvr_msgtxt)CS_CONNECTION 	*conn;CS_COMMAND 	*cmd;CS_SERVERMSG 	*srvr_msgtxt;{	CS_RETCODE retcode ;if ((srvr_msgtxt->msgnumber == 5701) || ((srvr_msgtxt->msgnumber) == 5703)){	/* Suppress informational messages */}else{	fprintf(stderr, "\nSERVER MESSAGE");	if (srvr_msgtxt->svrnlen > 0)	{  		fprintf(stderr, " from server '%s'", srvr_msgtxt->svrname);	}	if (srvr_msgtxt->proclen > 0)	{  		fprintf(stderr, " at procedure '%s'", srvr_msgtxt->proc);	}	fprintf(stderr, "\nnumber (%ld), severity (%ld)",                  srvr_msgtxt->msgnumber, srvr_msgtxt->severity);	fprintf(stderr, "\nstate (%ld), line (%ld)",                  srvr_msgtxt->state, srvr_msgtxt->line);	fprintf(stderr, "\ntext:\n%s", srvr_msgtxt->text);	fprintf(stderr, "\nMESSAGE HANDLER OUTPUT ENDS\n");}	return(CS_SUCCEED);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -