📄 advicebussiness.c
字号:
}/*advice_supply(...)*/
int insert_into_agreement(char* tCustomerID,char* tProviderID,char* tPartID,float tfPrice,float tfQuantity)
{
/* EXEC SQL BEGIN DECLARE SECTION; */
char customerID[10];
char PartID[10];
float Price;
float Quantity;
char providerID[10];
/* EXEC SQL END DECLARE SECTION; */
strcpy(customerID,tCustomerID);
strcpy(providerID,tProviderID);
strcpy(PartID,tPartID);
Price = tfPrice;
Quantity = tfQuantity;
/* EXEC SQL WHENEVER SQLERROR GOTO error; */
/* EXEC SQL INSERT INTO Agreement
VALUES(:customerID,:providerID,:PartID,:Price,:Quantity,'no','01-1月-01','no','01-1月-01'); */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 5;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.stmt = "insert into Agreement values (:b0,:b1,:b2,:b3,:b4,'no','01\
-1月-01','no','01-1月-01')";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )238;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlstm.sqhstv[0] = ( void *)customerID;
sqlstm.sqhstl[0] = (unsigned int )10;
sqlstm.sqhsts[0] = ( int )0;
sqlstm.sqindv[0] = ( void *)0;
sqlstm.sqinds[0] = ( int )0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqadto[0] = (unsigned short )0;
sqlstm.sqtdso[0] = (unsigned short )0;
sqlstm.sqhstv[1] = ( void *)providerID;
sqlstm.sqhstl[1] = (unsigned int )10;
sqlstm.sqhsts[1] = ( int )0;
sqlstm.sqindv[1] = ( void *)0;
sqlstm.sqinds[1] = ( int )0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqadto[1] = (unsigned short )0;
sqlstm.sqtdso[1] = (unsigned short )0;
sqlstm.sqhstv[2] = ( void *)PartID;
sqlstm.sqhstl[2] = (unsigned int )10;
sqlstm.sqhsts[2] = ( int )0;
sqlstm.sqindv[2] = ( void *)0;
sqlstm.sqinds[2] = ( int )0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqadto[2] = (unsigned short )0;
sqlstm.sqtdso[2] = (unsigned short )0;
sqlstm.sqhstv[3] = ( void *)&Price;
sqlstm.sqhstl[3] = (unsigned int )sizeof(float);
sqlstm.sqhsts[3] = ( int )0;
sqlstm.sqindv[3] = ( void *)0;
sqlstm.sqinds[3] = ( int )0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqadto[3] = (unsigned short )0;
sqlstm.sqtdso[3] = (unsigned short )0;
sqlstm.sqhstv[4] = ( void *)&Quantity;
sqlstm.sqhstl[4] = (unsigned int )sizeof(float);
sqlstm.sqhsts[4] = ( int )0;
sqlstm.sqindv[4] = ( void *)0;
sqlstm.sqinds[4] = ( int )0;
sqlstm.sqharm[4] = (unsigned int )0;
sqlstm.sqadto[4] = (unsigned short )0;
sqlstm.sqtdso[4] = (unsigned short )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqphss = sqlstm.sqhsts;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqpins = sqlstm.sqinds;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlstm.sqpadto = sqlstm.sqadto;
sqlstm.sqptdso = sqlstm.sqtdso;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
// if (sqlca.sqlcode == 1403) break;
if (sqlca.sqlcode < 0) goto error;
}
/* EXEC SQL COMMIT; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 5;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )273;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) goto error;
}
return 0;
error:
printf("ERROR:(insert_into_agreement)\n");
/* EXEC SQL WHENEVER SQLERROR CONTINUE; */
printf("\nORACLE error detected:\n");
printf("\n%.70s\n",sqlca.sqlerrm.sqlerrmc);
/*EXEC SQL ROLLBACK RELEASE; */
return 1;
}/*insert_into_agreement(...)*/
int delete_after(char* tCustomerID,char* tPartID)
{
/*puts("delete_after(char* customerID,char* partID)\n");*/
/* EXEC SQL BEGIN DECLARE SECTION; */
char CustomerID[10];
char PartID[10];
/* EXEC SQL END DECLARE SECTION; */
strcpy(CustomerID,tCustomerID);
strcpy(PartID,tPartID);
/*printf("%s\t%s\t%s\n",CustomerID,PartID);*/
/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */
/* EXEC SQL WHENEVER NOT FOUND GOTO notfound; */
/* EXEC SQL DELETE FROM After WHERE CustomerID =:CustomerID AND PartID=:PartID; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 5;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.stmt = "delete from After where (CustomerID=:b0 and PartID=:b1)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )288;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlstm.sqhstv[0] = ( void *)CustomerID;
sqlstm.sqhstl[0] = (unsigned int )10;
sqlstm.sqhsts[0] = ( int )0;
sqlstm.sqindv[0] = ( void *)0;
sqlstm.sqinds[0] = ( int )0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqadto[0] = (unsigned short )0;
sqlstm.sqtdso[0] = (unsigned short )0;
sqlstm.sqhstv[1] = ( void *)PartID;
sqlstm.sqhstl[1] = (unsigned int )10;
sqlstm.sqhsts[1] = ( int )0;
sqlstm.sqindv[1] = ( void *)0;
sqlstm.sqinds[1] = ( int )0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqadto[1] = (unsigned short )0;
sqlstm.sqtdso[1] = (unsigned short )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqphss = sqlstm.sqhsts;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqpins = sqlstm.sqinds;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlstm.sqpadto = sqlstm.sqadto;
sqlstm.sqptdso = sqlstm.sqtdso;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode == 1403) goto notfound;
if (sqlca.sqlcode < 0) goto sqlerr;
}
/* EXEC SQL COMMIT; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 5;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )311;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) goto sqlerr;
}
printf("\n%s,%s dropped.\n",CustomerID,PartID);
return 0;
notfound:
printf("\nWARING:(delete_after)The agreement %s,%s, does not exist.\t",CustomerID,PartID);
return -1;
sqlerr:
printf("\n(delete_after)删除不成功!\n");
printf("%70s\n",sqlca.sqlerrm.sqlerrmc);
/* EXEC SQL WHENEVER SQLERROR CONTINUE; */
/* EXEC SQL ROLLBACK; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 5;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )326;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}
return -1;
}/*delete_after(...)*/
int update_supply(char* tProviderID,char* tPartID,float tPrice,float tQuantity)
{
/*puts("alter_supply_quantity(char* customerID,char* partID,char* fQuantity)\n");*/
/* EXEC SQL BEGIN DECLARE SECTION; */
char ProviderID[10];
char PartID[10];
float Price;
float Quantity;
/* EXEC SQL END DECLARE SECTION; */
strcpy(ProviderID,tProviderID);
strcpy(PartID,tPartID);
Price=tPrice;
Quantity=tQuantity;
/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */
/* EXEC SQL WHENEVER NOT FOUND GOTO notfound; */
/* EXEC SQL UPDATE supply SET ProviderID=:ProviderID,PartID=:PartID,Price=:Price,Quantity=:Quantity
WHERE ProviderID=:ProviderID AND PartID=:PartID; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 6;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.stmt = "update supply set ProviderID=:b0,PartID=:b1,Price=:b2,Quan\
tity=:b3 where (ProviderID=:b0 and PartID=:b1)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )341;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlstm.sqhstv[0] = ( void *)ProviderID;
sqlstm.sqhstl[0] = (unsigned int )10;
sqlstm.sqhsts[0] = ( int )0;
sqlstm.sqindv[0] = ( void *)0;
sqlstm.sqinds[0] = ( int )0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqadto[0] = (unsigned short )0;
sqlstm.sqtdso[0] = (unsigned short )0;
sqlstm.sqhstv[1] = ( void *)PartID;
sqlstm.sqhstl[1] = (unsigned int )10;
sqlstm.sqhsts[1] = ( int )0;
sqlstm.sqindv[1] = ( void *)0;
sqlstm.sqinds[1] = ( int )0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqadto[1] = (unsigned short )0;
sqlstm.sqtdso[1] = (unsigned short )0;
sqlstm.sqhstv[2] = ( void *)&Price;
sqlstm.sqhstl[2] = (unsigned int )sizeof(float);
sqlstm.sqhsts[2] = ( int )0;
sqlstm.sqindv[2] = ( void *)0;
sqlstm.sqinds[2] = ( int )0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqadto[2] = (unsigned short )0;
sqlstm.sqtdso[2] = (unsigned short )0;
sqlstm.sqhstv[3] = ( void *)&Quantity;
sqlstm.sqhstl[3] = (unsigned int )sizeof(float);
sqlstm.sqhsts[3] = ( int )0;
sqlstm.sqindv[3] = ( void *)0;
sqlstm.sqinds[3] = ( int )0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqadto[3] = (unsigned short )0;
sqlstm.sqtdso[3] = (unsigned short )0;
sqlstm.sqhstv[4] = ( void *)ProviderID;
sqlstm.sqhstl[4] = (unsigned int )10;
sqlstm.sqhsts[4] = ( int )0;
sqlstm.sqindv[4] = ( void *)0;
sqlstm.sqinds[4] = ( int )0;
sqlstm.sqharm[4] = (unsigned int )0;
sqlstm.sqadto[4] = (unsigned short )0;
sqlstm.sqtdso[4] = (unsigned short )0;
sqlstm.sqhstv[5] = ( void *)PartID;
sqlstm.sqhstl[5] = (unsigned int )10;
sqlstm.sqhsts[5] = ( int )0;
sqlstm.sqindv[5] = ( void *)0;
sqlstm.sqinds[5] = ( int )0;
sqlstm.sqharm[5] = (unsigned int )0;
sqlstm.sqadto[5] = (unsigned short )0;
sqlstm.sqtdso[5] = (unsigned short )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqphss = sqlstm.sqhsts;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqpins = sqlstm.sqinds;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlstm.sqpadto = sqlstm.sqadto;
sqlstm.sqptdso = sqlstm.sqtdso;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode == 1403) goto notfound;
if (sqlca.sqlcode < 0) goto sqlerr;
}
/* EXEC SQL COMMIT; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 6;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )380;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) goto sqlerr;
}
printf("\n%s,%s updated.\n",ProviderID,PartID);
return 0;
notfound:
printf("WARING:(update_supply)supply %s,%s does not exist.\t",ProviderID,PartID);
return -1;
sqlerr:
printf("ERROR:(update_supply(...))");
printf("%70s\n",sqlca.sqlerrm.sqlerrmc);
/* EXEC SQL WHENEVER SQLERROR CONTINUE; */
/* EXEC SQL ROLLBACK; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 10;
sqlstm.arrsiz = 6;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )395;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}
return -1;
}/*update_supply(...)*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -