Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    12

    Una piccola conversione da Database access a SQL SERVER URGENTE :D

    Chi può aiutarmi a fare questa piccola conversione di codice da access a sql ?
    "Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged
    'questo punto l'ho fatto
    daps = New OleDb.OleDbDataAdapter("select * from Categories where CID='" + DropDownList2.SelectedValue + "'", con)
    'da qua ho problemi :P mi dice datatable non coincide con sqlserver
    Dim dt As New DataTable
    dt.Clear()
    daps.Fill(dt)
    'e poi mi da errori sul ROws
    TextBox4.Text = dt.Rows(0)(1)
    TextBox5.Text = dt.Rows(0)(2)
    End Sub"

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2008
    residenza
    Turin, Italy
    Messaggi
    157
    Secondo me è il DataAdapter. Io uso sempre lo stesso codice, adattandolo di volta in volta e così funziona sempre, indipendentemente da che cosa debba fare sul DB.

    Dim dsXXX As New DataSet()
    Dim cmdXXX As New SqlCommand(sql, Conn)
    Dim daXXX As New SqlDataAdapter
    daXXX.SelectCommand = cmdXXX
    Dim cbXXX As New SqlCommandBuilder(daXXX)
    daXXX.Fill(dsXXX, "tblXXX")
    Dim tblXXX As DataTable = dsXXX.Tables("tblXXX")

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    12
    io ho aggiunto come libreria Imports System.Data dici che ho risolto qlks o mi conviene fare come mi hai consigliato tu ? grz mille per l'aiuto

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2008
    residenza
    Turin, Italy
    Messaggi
    157
    Questo aiuta senz'altro.

    Io per abitudine mi tengo pezzi di codice "Standard" e puliti, che posso adattare al volo a quasi tutte le occasioni, perchè ho una memoria pessima per la sintassi e le istruzioni.
    Questo è uno di quelli semplici.
    Il problema sulle cose complesse è che alla fine ti dimentiche perchè le avevi fatte così

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    12
    ora lo provo poi t fcc sapere ... anke io ho una memoria pessima ... inftt mi preoccupo che soffra di alzaimer

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    12
    ok... ci sono t ringrazio tantissimo OTTIMO CONSIGLIO... ora sono inciampato su un altro errore hmmm abbastanza strano ...

    "Errore server nell'applicazione '/'.

    Index non compreso nell'intervallo. Richiesto valore non negativo e minore della dimensione dell'insieme.
    Nome parametro: index

    Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

    Dettagli eccezione: System.ArgumentOutOfRangeException: Index non compreso nell'intervallo. Richiesto valore non negativo e minore della dimensione dell'insieme.
    Nome parametro: index

    Errore nel codice sorgente:


    Riga 14: SqlDataSource1.InsertParameters(0).DefaultValue = TextBox2.Text
    Riga 15: SqlDataSource1.InsertParameters(1).DefaultValue = TextBox2.Text
    Riga 16: SqlDataSource1.InsertParameters(2).DefaultValue = TextBox3.Text
    Riga 17: SqlDataSource1.Insert()
    Riga 18: TextBox2.Text = ""
    "
    mi da l'errore alla riga 16 perchèè ?? qui devo copiare dei dati e registrarlo nel database dove sbaglio grazie in anticipo !

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2008
    residenza
    Turin, Italy
    Messaggi
    157
    Sembra non ci sia il terzo parametro. Prova a mettere i nomi, invece che i numeri.
    Altrimenti puoi registrare direttamente i dati nel DB senza passare attraverso la SqlDataSource. Dopo aver usato il codice che ti ho dato puoi provare a fare così:

    Dim drXXX As DataRow = tblXXX.NewRow()
    drXXX("NomeCampo") = TextBox2.Text
    ...

    dsXXX.Tables("tblXXX").Rows.Add(drXXX)
    daXXX.Update(dsXXX.Tables("tblXXX"))

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    12
    HO RISOLTOOOOOOO SEMPLICE PROPRIO SONO ANDATO NEL PANICO PER NULLA


    con.Open()
    Dim inscmd As String = "INSERT INTO Categorie (NomeCategoria,DescrizioneCategoria) Values (@NomeCategoria,@DescrizioneCategoria)"
    Dim InsertParameters = New SqlCommand(inscmd, con) 'comando che connette i dati al database
    InsertParameters.Parameters.AddWithValue("@NomeCat egoria", TextBox2.Text) 'registrazione Nome Categoria
    InsertParameters.Parameters.AddWithValue("@Descriz ioneCategoria", TextBox3.Text) 'Registrazione della descrizione
    InsertParameters.ExecuteNonQuery()
    con.Close() 'chiude la connessione

    ora me li registra senza alcun errore purtroppo sto seguendo una guida fatta col database access e ogni tanto per convertire in sql ho delle difficoltà

    Grazie mille per l'aiuto cypi

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.