Inserimento diretto record su access

mercoledì 24 novembre 2010 - 14.50
Tag Elenco Tags  C#  |  Windows XP  |  Visual Studio 2005  |  Access (.mdb)

Luigi3 Profilo | Junior Member

Sto utilizzando visual c# in ambiente visual studio 2005 e db access.
Ho questo problema:

OleDbCommand dbCmd = new OleDbCommand();
dbCmd.Connection = conn;
conn.Open();
dbCmd.CommandText = "INSERT INTO..."
dbCmd.ExecuteNonQuery();

Non vedo il record inserito nella tabella. Sto utilizzando un file access come db.
La connection string è esatta, infatti quando faccio conn.Open(); non ottengo errori.

Anche il comando di insert è esatto in quanto se faccio copia/incolla della query e la sparo direttamente come query nel db access, il record viene inserito.
Inoltre anche il codice non va in errore.

Quale potrebbe essere l'errore?

erongis Profilo | Junior Member

Hai verificato che la stringa di connessione punti ad un'istanza in locale del Db e non , magari ad una in rete e scrivi in rete e non nel PC in locale?

Luigi3 Profilo | Junior Member

Potrebbe ma non credo.
La mia connection string è questa:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Prova.mdb;Persist Security Info=True;Jet OLEDB:Database Password=..."

Ho notato che in fase di debug la parte |DataDirectory| non viene sostituita, ma rimane cosi'.
Come potrei eventualmente visualizzare il contenuto di questa variabile?

alexmed Profilo | Guru

Ciao
La stringa di connessione sembra a posto.
Source=|DataDirectory|\db.mdb si riferisce al percorso del progetto:
C:\Users\...\Documents\Visual Studio 2008\Projects\nome_progetto\nome_progetto\bin\Debug\
dove dovresti avere il file Access.
Quello che puoi fare è controllare di non avere due db e quindi su uno scrivi e sull'altro leggi (e quindi stringhe di connessione diverse per lettura e scrittura)

Prova eventualmente questa che è leggermente diversa:

Dim dbConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=|DataDirectory|\db.mdb")


alexmed

Feroxkk Profilo | Junior Member

(messaggio cancellato per errore linguaggio)
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5