Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - VB.Net - Import e popolazione database da codice
Forum - C# / VB.NET - VB.Net - Import e popolazione database da codice - Pagina 2

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 15:37
Sabato, 17/01/2009
Non facevi prima con Me.DatiExcelDataSet.DatiTot.Rows.Count ?

PM Quote
Avatar
xone2003 (Normal User)
Rookie


Messaggi: 32
Iscritto: 27/11/2008

Segnala al moderatore
Postato alle 11:39
Domenica, 18/01/2009
Certo che si fa prima!
Ma non sapevo di questa abbreviazione.

tuttavia come nel caso del select non funziona, o meglio risponde con "0" come se non esistesse nessuna riga nel database.

non ho idea del perchè si comporti così.

il database datiexcel e relativa tabella datitot è pieno, il dataset l'ho creato e con il table adapter mi conferma l'esistenza di 202righe per 15 colonne quindi non capisco perchè il conteggio dia zero!

non so che fare.

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 14:48
Domenica, 18/01/2009
Non risponde 0 come se non ci fosse niente, ma lo fa perchè effettivamente non c'è niente, non c'è possibilità di errore. Resta da vedere come hai fatto a verificare che esistono veramente 202 righe se il codice che hai usato te ne restituisce 0. Controllare che il database abbia 202 righe e dire che il datatable ne abbia 202 sono due cose diverse. Magari ti sei dimenticato di caricare la tabella all'inizio...

PM Quote
Avatar
xone2003 (Normal User)
Rookie


Messaggi: 32
Iscritto: 27/11/2008

Segnala al moderatore
Postato alle 18:14
Domenica, 18/01/2009
il database è di Access .accdb con nome datiexcel
all'interno è inserita un'unica tabella "datitot" e sono presenti 202 righe di 15 colonne.la tabella è piena di dati verificato e riverificato e tra l'altro nell'anteprima del tableadapter nel dataset viene confermato tutto quanto visualizzando tutti i dati.

Sono sicuro che la tabella sia presente e piena di dati!

Vedo il database nella soluzione (cliccandoci sopra due volte lo apro tranquillamente e visualizzo i dati), il dataset è creato correttamente, il tableadapter risponde con risultati perfetti quindi non so cos'altro possa mancare!

il codice è scritto in un evento button_click...
e comprende l' ME.Datiexcel..... ed un misero msgbox quindi non saprei dove altro cercare.


Cosa vuol dire esattamente "dimenticato di caricare la tabella all'inizio"?
Probabilmente ho saltato qualche passaggio?

Ultima modifica effettuata da xone2003 il 18/01/2009 alle 18:15
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 17:44
Lunedì, 19/01/2009
Di solito, in Form_Load, si carica la tabella con il table adapter:
Codice sorgente - presumibilmente Plain Text

  1. NomeTableAdapter.Fill(Me.NomeDataSet.NomeDataTable)


PM Quote
Avatar
xone2003 (Normal User)
Rookie


Messaggi: 32
Iscritto: 27/11/2008

Segnala al moderatore
Postato alle 13:41
Martedì, 20/01/2009
in effetti funziona!
ho inserito il codice nella forma_load e la sisposta è 202 (correttamente).
Ovviamente non sapevo di dover caricare manualmente il tableadapter.... In effetti non avendolo mai fatto mi sono chiesto come fanno a funzionare tutte le altre form con le tabelle annesse.
Presumo che utilizzando visual studio 2008(vb.net) in qualche modo io abbia usato una qualche procedura automatica che mi ha permesso, senza che io lo sapessi, di caricare le tabelle nelle form.

Grazie per l'aiuto...:k:
ora proverò con l'import del database e Vi farò sapere.

La struttura con il select l'avevo utilizzata non per contare le righe (il msgbox serviva solo per vedere il funzionamento del conteggio, presenza tabella ecc..) ma per poter selezionare successivamente in funzione di un variabile che incrementa ognuna riga da importare.
(sperando di essere sulla strada giusta).
8-|8-|

PM Quote
Avatar
xone2003 (Normal User)
Rookie


Messaggi: 32
Iscritto: 27/11/2008

Segnala al moderatore
Postato alle 11:12
Mercoledì, 21/01/2009
Eccomi con l'errore...

Ho scritto il codice che dovrebbe farmi l'import dei dati da un db all'altro....però ho problemi con un errore che continua a perseguitarmi !

le variabili dopo l'importquery1 sono tutte quante sottolineate con l'errore "impossibile convertire il valore di tipo 'system.data.EnumerableRowCollection (of Date)'in date? .....in 'string' ...in 'decimal' ecc..."
suppongo che sia dovuto al tipo di formattazione dei dati in partenza e quelli in arrivo...ma non ho idea di come uscirne!
anche perchè il tipo di dati delle due tabelle li ho resi uguali.
:d:d:d

Codice sorgente - presumibilmente VB.NET

  1. Public Class Import
  2.  
  3.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  4.  
  5.         Dim controllo = Me.DatiExcelDataSet.DatiTot.Rows.Count
  6.         Dim i = 0
  7.  
  8.         For i = 1 To controllo Step 1
  9.             If i = controllo Then
  10.                 Exit For
  11.             End If
  12.  
  13.             Dim Bike = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  14.                        Where riga.Nr = i Select riga.Bicicletta
  15.             Dim Cat = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  16.                        Where riga.Nr = i Select riga.Categoria
  17.             Dim Dat = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  18.                        Where riga.Nr = i Select riga.Data
  19.             Dim Desc = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  20.                        Where riga.Nr = i Select riga.Descrizione
  21.             Dim Nots = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  22.                        Where riga.Nr = i Select riga.Note
  23.             Dim CondizioniMet = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  24.                        Where riga.Nr = i Select riga.CondizioniMeteo
  25.             Dim Chilomet = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  26.                        Where riga.Nr = i Select riga.Chilometraggio
  27.             Dim VMax = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  28.                        Where riga.Nr = i Select riga.VelocitàMassima
  29.             Dim AVG = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  30.                        Where riga.Nr = i Select riga.VelocitàMedia
  31.             Dim TT = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  32.                        Where riga.Nr = i Select riga.TempoTotale
  33.             Dim Year = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  34.                        Where riga.Nr = i Select riga.Anno
  35.             Dim Day = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  36.                        Where riga.Nr = i Select riga.Giorno
  37.             Dim Partec = From riga As DatiExcelDataSet.DatiTotRow In Me.DatiExcelDataSet.DatiTot _
  38.                        Where riga.Nr = i Select riga.Partecipanti
  39.             Dim InsertinDatiBici As DBDatiBiciDataSetTableAdapters.DatiBiciTableAdapter = New DBDatiBiciDataSetTableAdapters.DatiBiciTableAdapter
  40.             Try
  41.                 InsertinDatiBici.ImportQuery1(Dat, Desc, Nots, CondizioniMet, Chilomet, VMax, AVG, TT, Year, Cat, Bike, Day, Partec)
  42.                 MsgBox("Inserimento in database completato" & i & "riga", MsgBoxStyle.Information)
  43.             Catch ex As Exception
  44.                 MsgBox(ex.Message, MsgBoxStyle.Critical)
  45.             End Try
  46.         Next
  47.     End Sub
  48.  
  49.     Private Sub Import_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  50.         Me.DatiTotTableAdapter.Fill(Me.DatiExcelDataSet.DatiTot)
  51.         Me.DatiBiciTableAdapter.Fill(Me.DbDatiBiciDataSet.DatiBici)
  52.     End Sub
  53. End Class


Ultima modifica effettuata da xone2003 il 21/01/2009 alle 11:15
PM Quote
Avatar
xone2003 (Normal User)
Rookie


Messaggi: 32
Iscritto: 27/11/2008

Segnala al moderatore
Postato alle 12:14
Mercoledì, 21/01/2009
...
ad esempio la variabile "year" preleva un dato di 4 cifre "decimal" dalla tabella datitot e dovrebbe posizionarlo in un campo "decimal" nella tabella datibici.
non capisco l'errore di conversione!

:d:d

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo