Oracle database 11G to C# WPF application

  • Thread starter Thread starter Markus Freitag
  • Start date Start date
M

Markus Freitag

Guest
Hello,

I must make a connection from my C# application and the Oracle database 11G
My questions are.
What do I have to prepare to succeed? OK google found a lot.
One Oracle Data Access Components (ODAC) for Windows Downloads
Two Oracle Data Access Components (ODAC) for Windows

Three

My problems
I get a script from the client like this

SCRIPT CREATE TABLE PCB_SERIAL_NUMBERS (PCB_SERIAL_NO_ID NUMBER, -- PRIMARY KEY BATCH_ID NUMBER,
PANEL_ID NUMBER,
POSITION_INDEX VARCHAR2(10),
MODEL_ID VARCHAR2(40),
MODEL_NAME VARCHAR2(40),
FG_ID NUMBER, FG_NAME VARCHAR2(40),
PCB_SERIAL_NO VARCHAR2(25),

I must call StoredProcedure function.

PKG_PCB_SERIAL_NUMBERS. GET_NO_OF_PANELS_UNPROCESSED ( p_in_batch_id NUMBER,
p_out_unprocessed_panel_count OUT VARCHAR2, p_out_error_message OUT VARCHAR2);

Summary:
With which tool can I execute the script?
With which tool can I fill the database?
How is the right way to call StoredProcedure inside C# ?
I want to be able to control the server/database with a tool? As to use HeidiSQL for MySQL?
Is it good and useful for any request to open the database? To use using?
I have about 10 StoredProcedure?
using (OracleConnection connection = new OracleConnection(Cfg.DbConnectionstring))
{
OracleCommand cmd = new OracleCommand("STACA.GetStatus", connection);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add("retVal", OracleDbType.Int32, ParameterDirection.ReturnValue);

cmd.Parameters.Add("vchMacAdr", "5c9ad8e11abe");
cmd.Parameters.Add("vchId", "50W0DE1");
cmd.Parameters.Add("vchNo", "S3250-2");
cmd.Parameters.Add("vchStatus", OracleDbType.Varchar2, ParameterDirection.Output);
cmd.Parameters["vchStatus"].Size = 1;
cmd.Parameters.Add("vchHNo", OracleDbType.Varchar2, ParameterDirection.Output);
cmd.Parameters["vchHNo"].Size = 16;

try
{
connection.Open();
OracleDataAdapter da = new OracleDataAdapter(cmd);
cmd.ExecuteNonQuery();

OracleDecimal d = (OracleDecimal)cmd.Parameters["retVal"].Value;
int retValue = d.ToInt32();

string status = cmd.Parameters["vchStatus"].Value.ToString();

if (status != "1")

Thanks in advance for answers.
With many greetings Markus

Continue reading...
 
Back
Top