Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48

    visual c# 2008 express, connessione a database oracle 10g XE

    Buongiorno.
    L'obiettivo che mi prefiggo è creare una connessione fra visual studio 2008 express e Oracle 10G Express su è installato Oracle 11g ODAC 11.1.0.7.20
    Seguendo la guida passo passo dell' Oracle Data Provider presente su http://www.oracle.com/technology/obe...ed_c_otn.htm#t

    scrivo il seguente codice per la connessione al database di Oracle, che si attiva alla pressione del mouse di un bottone:

    string oradb = "Data Source=XE ;User Id=hr;Password=hr;";
    OracleConnection conn = new OracleConnection(oradb); // C#
    conn.Open();
    OracleCommand cmd = new OracleCommand();
    cmd.Connection = conn;
    cmd.CommandText = "select department_name from departments where department_id = 10";
    cmd.CommandType = CommandType.Text;
    OracleDataReader dr = cmd.ExecuteReader();
    dr.Read();
    label1.Text = dr.GetString(0);
    conn.Dispose();

    Nel quale ho inserito XE come Data Source (visto anche dal TNSPING) e l'utente hr è un utente preesistente.

    Pero', quando premo il bottone mi restituisce il seguente errore:

    Impossibile caricare il file o l'assembly 'Oracle.DataAccess, Version=2.111.7.20, Culture=neutral, PublicKeyToken=89b483f429c47342' o una delle relative dipendenze. Impossibile trovare il file specificato.


    Qualcuno sa quale potrebbe .essere l'azione corretta? Premetto che ho controllato il percorso dell'Oracle.DataAccess.dll ed è corretto

  2. #2
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Non trova proprio questo Oracle.DataAccess.dll
    Immagino che da visual studio ti funziona giusto?
    I got the remedy

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Ciao!
    La compilazione non da errori.
    Quando clicco sul "button 1" sul form, associato al collegamento al database oracle, mostra il messaggio di errore.

  4. #4
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Io non stò parlando di compilazione, ti rifaccio la domanda: Quandi mandi il programma in debug ti funziona?
    I got the remedy

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Dunque, funziona fino a quando appare la form in cui è presente il bottone che, se premuto, da l'errore.
    l'errore è associato alla riga in cui è presente il comando
    Application.Run(new Form1());
    e cliccandoci sopra posso leggere:

    FileNotFoundException non è stata gestita

    se visualizzo i dettagli:
    System.IO.FileNotFoundException
    "Impossibile caricare il file o l'assembly 'Oracle.DataAccess, Version=2.111.7.20, Culture=neutral, PublicKeyToken=89b483f429c47342' o una delle relative dipendenze. Impossibile trovare il file specificato."

    Sto cercando su vari siti come fare...non capisco. Forse ho sbagliato a scrivere XE come Data Source (ma XE è il nome del DB che uso anche con TNSPING e con cui mi connetto col visual web developer).

  6. #6
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    non sò, dalla tua spiegazione non capisco cosa può essere...
    e cmq non hai ancora risposto alla mia domanda
    sai cos'è il debug e/o release vero?
    I got the remedy

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Intanto ti ringrazio per la pazienza, come avrai intuito sono una vera capra che ha appena iniziato, ma sto studiando parecchio per imparare decentemente la programmazione.
    Se per Debug del visual c# express intendi mettere i pallini rossi a sinistra di ogni riga di codice si ferma nel punto che segno con le X:


    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX
    private void button1_Click(object sender, EventArgs e)
    {

    string oradb = "Data Source=XE ;User Id=hr;Password=hr;";
    OracleConnection conn = new OracleConnection(oradb); // C#
    conn.Open();
    OracleCommand cmd = new OracleCommand();
    cmd.Connection = conn;
    cmd.CommandText = "select department_name from departments where department_id = 10";
    cmd.CommandType = CommandType.Text;
    OracleDataReader dr = cmd.ExecuteReader();
    dr.Read();
    label1.Text = dr.GetString(0);
    conn.Dispose();

    In pratica dove ho messo le x apre la form e devo premere per forza il bottone che mi da l'errore.

  8. #8
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    mmm...strano.
    Secondo me non è stata registrata bene questa dll.
    Dovresti andare nelle variabili d'ambiente e nella variabile path vedere se c'è il percorso che punta nella cartella che contiene questa dll.

    su vista:
    panello di controllo->sistema
    clicca su "Impostazioni di sistema avanzate" poi seleziona il tab "Avanzate" e clicci sul bottone "Variabili d'ambiente".
    dovresti vedere una cosa cosi':

    In basso trova la variabile path e cerca sul valore il percorso della cartella che contiene la dll di oracle.
    I got the remedy

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Mi sa che hai centrato il problema. Come Path ho:

    C:\oraclexe\app\oracle\product\10.2.0\server\;C:\o raclexe\app\oracle\product\10.2.0\server\bin

    La prima è la path dell'odac 11g, la seconda dell'oracle 10gXE
    ho installato (sbagliando) l'odac11g nella directory home dell'oracle 10gXE, e credo che questo stia creando dei grandi casini. Inoltre ho modificato la path e adesso ho l'istanza sospesa.

    Uffa.

    Comunque la grana è li.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48

    alto mare

    ho reinstallato Oracle 10g e le Odac ma niente da fare. Continua a generare il problema.
    lOracle.data.access si trova in
    C:\oraclexe\app\oracle\product\10.2.0\client\odp.n et\bin\2.x
    il percorso è lo stesso visualizzato nei riferimenti di visual studio.

    la variabile ambientale path ha come valore
    C:\oraclexe\app\oracle\product\10.2.0\client;C:\or aclexe\app\oracle\product\10.2.0\client\bin;C:\ora clexe\app\oracle\product\10.2.0\server\bin;

    odac11g installati in ODAC

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.