Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ds.suporting

Update no gridview com accessdatasource

Recommended Posts

Olá pessoal

Estou com um pequeno problema no asp.net(VB)

Fiz um gridview que exibe dados de uma tabela do banco de dados ACCESS usando o accessDataSource, o select ele faz normalmente, exibe todos os dados, o problema está no update, pois eu habilitei a opção "AutoGenerateEditButton" para conseguir fazer um update em determinados campos da tabela. Pelo que ví em tutoriais pela internet, eu tenho que ir no "configure datasource" clicar no botão "Advanced" na segunda etapa do Configure dataSource e habilitar o "generate INSERT, UPDATE and DELETE statements" e " Use Optimistic concurency", mas no meu VWD 2008 e 2005 estas oções estão desabilitadas, não dá pra marcar os checkbox's, tentei fazer manualmente conforme ví em elguns artigos mas o update mudava todos os campos do banco de dados.

 

Alguém pode me ajudar, Tem alguma configuração diferente que eu esteja pulando ou esquecendo para o ACCESSDATASOURCE ou para o GRIDVIEW? se não tiver como habilitar pelo assistente alguém pode me mostrar como fazer o update manualmente no gridview.

Preciso muito disso e conto com a ajuda de vocês! Valeu http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Movido Plataforma .NET http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET » Web Applications

 

Caso não consiga pelo Manager coloque o UpdateCommand pelo HTML mesmo, não tem segredo.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Movido Plataforma .NET http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET » Web Applications

 

Caso não consiga pelo Manager coloque o UpdateCommand pelo HTML mesmo, não tem segredo.

 

Abraços...

Olha eu até tentei olhando uns artigos na net mas não deu certo, eu fiz o updatecommand mas ele muda todas as linhas da tabela:

 

<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/bd.mdb"
			SelectCommand="SELECT [id], [nome], [email], [categoria] FROM [emails]" UpdateCommand="UPDATE emails SET nome = ?, email = ?, categoria = ? ">
			<UpdateParameters>
			<asp:Parameter Name="nome" Type="String" />
			<asp:Parameter Name="email" Type="String" />
			<asp:Parameter Name="categoria" Type="String" />				 
			</UpdateParameters>
		</asp:AccessDataSource>

Tentei tbm colocar um Where de "ID" mas não mudou nada, não atera nenhuma linha. abaixo vou colocar como está meu gridview e o AccessDataSource

 

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AutoGenerateEditButton="True"
			DataSourceID="AccessDataSource1" Width="207px">
			<Columns>
				<asp:BoundField DataField="nome" HeaderText="nome" SortExpression="nome" />
				<asp:BoundField DataField="email" HeaderText="email" SortExpression="email" />
				<asp:BoundField DataField="categoria" HeaderText="categoria" SortExpression="categoria" />
			</Columns>
		</asp:GridView>
		<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/bdunire.mdb"
			SelectCommand="SELECT [id], [nome], [email], [categoria] FROM [emails]" UpdateCommand="UPDATE emails SET nome = ?, email = ?, categoria = ? WHERE(id=?)">
			<UpdateParameters>
			<asp:Parameter Name="nome" Type="String" />
			<asp:Parameter Name="email" Type="String" />
			<asp:Parameter Name="categoria" Type="String" />		   
			<asp:Parameter Name="id" Type="String" />		   
			</UpdateParameters>
		</asp:AccessDataSource>

Me dá uma luz pois não sei mais como montar este updatecommand

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara o UpdateCommand esta correto, agora basta saber como você esta alimentando seus Parameters.

 

Abraços...

Aí é que está o dilema!

Não sei como o gridview faz. o Update funciona sem o where id mas ele muda todas as linhas da tabela, não sei como colocar no where o email antigo para mudar apenas a linha selecionada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.