Ho questo problema: Ogni volta che realizzo una gridView con la possibilità di cancellare i record (del Db Access) non mi cancella effettivamente nulla, c'è un modo per cancellare i record anche senza dover usare il gridView? Premetto che uso VWD express edition il quale mi da la possibilità di creare a mio piacimento le gridView (compresa la cancellazione, modifica o edit dei record) ma è proprio questa ad evere problemi.
Grazie...

Creazione Siti Vicenza
Posizionamento Siti - SEO
è probabile ci sia un errore nella query.

usando ado.net (quello che fa AccssDataSource) puoi tranquillamente manipolare il db.

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
102 messaggi dal 08 gennaio 2007
"ricardo78" <ricardo78> ha scritto nel messaggio news:300809@...
Ho questo problema: Ogni volta che realizzo una gridView con la possibilità
di cancellare i record (del Db Access) non mi cancella effettivamente nulla, c'è un modo per cancellare i record anche senza dover usare il gridView? Premetto che uso VWD express edition il quale mi da la possibilità di creare a mio piacimento le gridView (compresa la cancellazione, modifica o edit dei record) ma è proprio questa ad evere problemi.
Grazie...

Hai provato ad impostare la query di delete così:

DELETE FROM tuatabellaWHERE (id = ?)

?

Prova e vedi se ti funziona.

Saluti @ndrea
grazie mille ragazzi. Faro delle prove sia in un modo che nell'altro!

Creazione Siti Vicenza
Posizionamento Siti - SEO
CiaoHo provato i vostri esempi, ma quello che piu mi convince è di usare ado.net (anche perche cosi imparo questo modo di interagire con i Db) è solo che ho trovato delle difficolta perchè non so bene come fare....Ho trovato alcuni esempi come questo:

<%@ Page Language="vb" Debug="True" %> 
<%@ import Namespace="System.Data" %> 
<%@ import Namespace="System.Data.OleDb" %> 
<script runat="server"> 

Sub Page_load() 

Dim prova as integer 
prova = InserimentoRecord() 
End Sub 


Function InserimentoRecord() As Integer 
Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source="& _ 
"C:\Inetpub\wwwroot\mio sito\mdb-database\archivio.mdb" 
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString) 

Dim queryString As String = "INSERT INTO [Mail] ([IndirizzoMail], [Data], [Testomail]) VALUES"& _ 
" ('mail', '01/01/2005', 'testo mail')" 
Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand 
dbCommand.CommandText = queryString 
dbCommand.Connection = dbConnection 

Dim rowsAffected As Integer = 0 
dbConnection.Open 
Try 
rowsAffected = dbCommand.ExecuteNonQuery 
Finally 
dbConnection.Close 
End Try 

Return rowsAffected 
End Function 

</script> 
<html> 
<head> 
<title>Aggiornamento Db</title> 
<meta http-equiv="pragma" content="no-cache" /> 
</head> 
<body> 
</body> 
</html> 

ma è scritto in Vb e sinceramente non so come adattarlo alle mie esigenze  io uso c#...qualcuno sa darmi qualche dritta? Meglio ancora se con qualche esempio concreto in modo da poter capire il funzionamento...


Grazie ancora.....

Creazione Siti Vicenza
Posizionamento Siti - SEO
condivido la tua scelta, avere una conoscenza di Ado.net è cosa buona:

http://msdn2.microsoft.com/en-us/library/e80y5yhx.aspx

là dovresti trovare tutto

e cerca ado.net anche su aspitalia troverari molte articoli e script.

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
29 messaggi dal 20 maggio 2007
ciao!
mi chiedevo se tu hai impostato la proprietà datakeynames del gridview.
quando imposti questa proprietà alla chiave primaria della tabella e hai già associato il gridview con un controllo di origine dati la cancellazione funziona. fai anche questo tentativo.
ti posto un pezzo del codice in questione:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="id"
        DataSourceID="AccessDataSource1">
        <Columns>
            <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
            <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True"
                SortExpression="id" />
            <asp:BoundField DataField="Appartamento 1" HeaderText="Appartamento 1" SortExpression="Appartamento 1" />
            <asp:BoundField DataField="Appartamento 2" HeaderText="Appartamento 2" SortExpression="Appartamento 2" />
            <asp:BoundField DataField="Appartamento 3" HeaderText="Appartamento 3" SortExpression="Appartamento 3" />
        </Columns>
    </asp:GridView>
    <br />
    <asp:AccessDataSource ID="AccessDataSource1" runat="server" ConflictDetection="CompareAllValues"
        DataFile="~/app_data/lastminute.mdb" DeleteCommand="DELETE FROM [Giugno] WHERE [id] = ? AND [Appartamento 1] = ? AND [Appartamento 2] = ? AND [Appartamento 3] = ?"
        InsertCommand="INSERT INTO [Giugno] ([id], [Appartamento 1], [Appartamento 2], [Appartamento 3]) VALUES (?, ?, ?, ?)"
        OldValuesParameterFormatString="original_{0}" SelectCommand="SELECT * FROM [Giugno]"
        UpdateCommand="UPDATE [Giugno] SET [Appartamento 1] = ?, [Appartamento 2] = ?, [Appartamento 3] = ? WHERE [id] = ? AND [Appartamento 1] = ? AND [Appartamento 2] = ? AND [Appartamento 3] = ?">
        <DeleteParameters>
            <asp:Parameter Name="original_id" Type="Int32" />
            <asp:Parameter Name="original_Appartamento_1" Type="String" />
            <asp:Parameter Name="original_Appartamento_2" Type="String" />
            <asp:Parameter Name="original_Appartamento_3" Type="String" />
        </DeleteParameters>


come vedi il dataKeyNames c'è (impostato sull'id della tabella) ma neanche cosi mi funziona...!


Modificato da ricardo78 il 31 luglio 2007 19.48 -

Creazione Siti Vicenza
Posizionamento Siti - SEO

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.