Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Insieme Per Risolvere Il Dubbio Databse

    Salve ragazzi, in un altro post era emerso che l'uso dei databse in asp.net e specialmente ado.net fosse un po complicato, io pensavo di crearci un applicazione insieme per vedere come funziona.

    ECCO LA MIA:


    Createvi un db access chiamato "animali1.mdb" contenete una tabella "animali_tab" contenente 4 campi "id, nome, razza, età" ed inserite in una pagina il seguente codice:


    <%@ Page Language="VB" Debug="true" %>
    <%@ import Namespace="System.Data" %>
    <%@ import Namespace="System.Data.OleDB" %>
    <script runat="server">

    'Creo la connessione al database animali1.mdb usabile da ogni sub
    dim Connessione as New OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\inetpub\wwwroot\animali1.mdb")

    'Creo la sub generata al momento del caricamento della pagina
    sub page_load(sender AS object, e AS Eventargs)

    'controllo che la pagina non sia già stata rispedita
    If NOT page.IsPostBack then
    'se è la prima volta che si apre la pagina richiamo la funzione bindgrid
    BindGrid()
    End if

    end sub


    'Creo la sub generata dal bottone aggiungi
    Sub button_click(sender AS object, e AS eventargs)


    'Creo la sttringa sql che immetterà i dati nel databse
    dim SQL = "INSERT INTO animali_tab (nome,razza,anni) VALUES('" & nome.text & "','" & razza.text & "','" & eta.text & "')"

    'creo un nuovo comando per utilizzare la stringa SQL
    Dim Comando as new OleDbCommand(SQL, Connessione)

    'Creo la variabile a cui affiderò l'esecuzione della query
    Dim variabile as integer

    'Tento l'immisione dei dati nel database
    Try

    'Se l'immisione è corretta nella label lblMessage stampo l'ok
    Connessione.Open()
    variabile = comando.ExecuteNonQuery()
    lblMessage.Text = "Dati immessi nel databse correttamente"

    Catch Err As Exception

    'Se si riscontrano errori li stampo nella label lblMEssage e esco dalla sub
    lblMessage.text = err.tostring
    Connessione.Close
    Exit Sub


    End Try

    'Richiamo la funzione bindgrid per rifare il datasource del datagrid
    BindGrid()

    end sub


    'Creo la funzione databind
    Sub BindGrid()

    'imposto un oleDbDataAdapter per prendere i dati dal Database
    dim objCmd as new OleDBDataAdapter("SELECT * FROM animali_tab",Connessione)
    'creo un nuovo dataset che conterrà i miei dati
    dim DS As DataSet = new DataSet()
    'Assegno i dati al dataset
    ObjCmd.Fill(ds, "Animali_tab")
    'Assegno come fonte del datagrid la tabella del dataset
    MyDataGrid.DataSource = ds.Tables("animali_tab").DefaultView
    'Faccio il databind del datagrid
    MyDataGrid.DataBind()
    end sub

    </script>
    <html>
    <head>
    </head>
    <body style="FONT: 10pt verdana">
    <form runat="server">
    <h3><font face="Verdana">ESEMPIO DI IMMISSIONE DATI IN UN DATAGRID</font>
    </h3>
    <table width="95%">
    <tbody>
    <tr>
    <td valign="top">
    <ASP:DataGrid id="MyDataGrid" runat="server" EnableViewState="false" HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana" CellSpacing="0" CellPadding="3" ShowFooter="false" BorderColor="black"
    BackColor="#ccccff"
    Width="700">
    </ASP:DataGrid>
    </td>
    <td valign="top">
    <table style="FONT: 8pt verdana" border=1 bordercolor="black">
    <tr>
    <td style="FONT: 10pt verdana" bgcolor="#aaaadd" colspan="2">
    Inserisci un nuovo animale:</td>
    </tr>
    <tr>
    <td nowrap="nowrap">
    Nome:
    </td>
    <td>
    <asp:textbox id="nome" runat="server" /></td>
    </tr>
    <tr>
    <td nowrap="nowrap">
    Età:
    </td>
    <td>
    <asp:textbox id="eta" runat="server" /></td>
    </tr>
    <tr nowrap="nowrap">
    <td>
    Razza:
    </td>
    <td>
    <asp:textbox id="razza" runat="server" /></td>
    </tr>
    <tr>
    <td colspan="2">
    <asp:Button id="button1" onclick="button_click" runat="server" text="aggioungi"/>
    </td>
    </tr>
    <tr>
    <td style="FONT: 10pt verdana" bgcolor="#aaaadd" colspan="2">
    Risultato della query:</td>
    </tr>
    <tr>
    <td colspan="2">
    <asp:label id="lblmessage" runat="server"/>
    </td>
    </tr>
    </tbody>
    </table>
    </td>
    </tr>
    </tbody>
    </table>
    </form>
    <pre></pre>
    </body>
    </html>


    Questa pagina realizza già un corretto inserimento, ora vediamo come possiamo eliminare o modificare i dati ok????????


    1° PROBLEMA INCONTRATO

    Se si aggiunge un nuovo record e poi si aggiorna la pagina viene aggiunto nuovamente, perchè???????????????

    SPERO CHE PARTECIPERETE!!!!!!!!!!!!!!!!!!!!!!!!!!
    Il miglior team di professionisti per le tue realizzazioni. http://www.brokenice.it
    Le tue vacanze in umbria
    agriturismo - agriturismi

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    18
    Sub BindGrid()

    'imposto un oleDbDataAdapter per prendere i dati dal Database
    dim objCmd as new OleDBDataAdapter("SELECT * FROM animali_tab",Connessione)
    'creo un nuovo dataset che conterrà i miei dati
    dim DS As DataSet = new DataSet()
    'Assegno i dati al dataset
    ObjCmd.Fill(ds, "Animali_tab")
    'Assegno come fonte del datagrid la tabella del dataset
    MyDataGrid.DataSource = ds.Tables("animali_tab").DefaultView
    'Faccio il databind del datagrid
    MyDataGrid.DataBind()
    end sub


    Credo sia questo il tuo problema!!
    Devi studiare di più!!!:adhone: (Scherzo)
    Prova a fare diversamente

    Ciao

  3. #3
    LKDR
    Guest
    Se si aggiunge un nuovo record e poi si aggiorna la pagina viene aggiunto nuovamente, perchè???????????????
    o provi a fare un response.redirect("paginaattuale.aspx") subito dopo aver aggiornato e chiuso il DB

    o (ma non so se ti fa ...ancora non ho capito bene quando lavora) controlli
    If Not Page.IsPostBack Then
    'aggiorni

    mah dimmi come ti va

  4. #4

    albero, dammi tu la soluzione!!!!!

    allora dimmi tu come fare quella parte sbagliata...........
    Il miglior team di professionisti per le tue realizzazioni. http://www.brokenice.it
    Le tue vacanze in umbria
    agriturismo - agriturismi

  5. #5

    Per Cortesia aiutooo

    Cari ragazzi devo chiedervi una cortesia che a voi non credo costi molto ma ame risolve un mare di problemi.
    Ho creato un database con Access 2002 (Manoscritti.mdb) questo risiede sul server...a me serve una pagina di accesso ai dati dove posso estrapolare i record dalla tabella (tabella_manoscritti)secondo tre criteri: Ricerca per Titolo o per Autore o per Identificativo. A me non interessa una pagina che inserisca dati ma solo di estrapolarli. Qualcuno potrebbe darmi il codice (la pagina asp). Sò che stò chiedendo una cosa bizzarra, ma magari la stringa di connessione ad Access la posso modificare io dopo
    Vi ringrazio anticipatamente

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.