Hello Friends,
Following information will give you step wise execution of the C program with oracle database in visual studio.
1] Creating new project
3]Select the Console application.
Please uncheck the Precompiled headers.
Database Connection
1]Connect to database
2]Connect to the Data source Oracle..
3] Add connection
4]Test the connection...
If it succeeded then do the further steps..or else you have problem in your database username/password or in SID
Project properties..
1]Right click on project
2]Go to the linker..and select the general option
Add two path Additional libraries as :-
3]select the input option
Add additional dependency as following path
- Create new project ..
- Select Win32 Console application.
- Give the appropriate name.
2]Click on next
Please uncheck the Precompiled headers.
- Click on Empty project
- Click on finish ..
- It will create new project with empty folders in it
- Add the new Item in source directory rename it as test.c or any *.c name.
Database Connection
1]Connect to database
- Go to the Tools
- connect to the database option
3] Add connection
- Server name :your SID
- Username :oracle username (system)
- Password :oracle password(system)
4]Test the connection...
If it succeeded then do the further steps..or else you have problem in your database username/password or in SID
Project properties..
1]Right click on project
- Choose option c/c++
- Add the Additional Directories..
Add two path Additional libraries as :-
- D:\oracle\product\10.2.0\db_1\OCI\lib;
- D:\oracle\product\10.2.0\db_1\OCI\lib\MSVC"
Add additional dependency as following path
- D:\oracle\product\10.2.0\db_1\OCI\lib\MSVC\oci.lib
------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
Save the following program as Test.c
#include <stdlib.h>
#include <stdlib.h>
#include <ocidem.h>
#include <oratypes.h>
#include <ocidem.h>
#define VERSION_7 2
Lda_Def lda;
char hda[256];
Cda_Def cda;
void showError(Lda_Def* dataArea)
{
char msg[512];
oerhms(&lda, dataArea->rc, msg, sizeof(msg));
printf("Error code : %i \n", dataArea->rc);
printf("Error message: %s \n", msg );
exit (EXIT_FAILURE);
}
main()
{
char* sql = "INSERT INTO PEOPLE(NAME, AGE, BORN) VALUES
(:NAME, :AGE, TO_DATE(:BORN, 'DD.MM.YY HH24:MI:SS'))";
char* name = "Apple";
int age = 60;
char* born = "15.03.1984 18:45:21";
/* CONNECT TO DB */
if (olog (&lda, hda, "username", -1, "password", -1, "SID", -1, OCI_LM_DEF))
{ showError(&lda); }
/* CREATE CURSOR */
if (oopen (&cda, &lda, 0, -1, -1, 0, -1))
{ showError(&cda); }
/* PARSE SQL */
if (oparse(&cda, sql, -1, 0, VERSION_7))
{ showError(&cda); }
/* BIND VARIABLES */
if (obndrv(&cda, ":NAME", -1, name, strlen(name)+1, STRING_TYPE, -1, 0, 0, -1, -1))
{ showError(&cda); }
if (obndrv(&cda, ":AGE" , -1, &age, sizeof(int) , INT_TYPE , -1, 0, 0, -1, -1))
{ showError(&cda); }
if (obndrv(&cda, ":BORN", -1, born, strlen(born)+1, STRING_TYPE, -1, 0, 0, -1, -1))
{ showError(&cda); }
/* EXECUTE STATEMENT */
if (oexec (&cda) && cda.rc != 1) { showError(&cda); }
/* COMMIT */
if (ocom (&lda)) { showError(&cda); }
/* CLOSE CURSOR */
if (oclose(&cda)) { showError(&lda); }
/* CLOSE DB CONNECTION */
if (ologof(&lda)) { showError(&lda); }
}
-----------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
Build and run the above program.
Note:Before running above project ..Create the people table in the oracle database.
create table people(name char(20),age int ,born int);
Check the database by select * from people.
No comments:
Post a Comment