pumlala 0 Denunciar post Postado Maio 28, 2008 pessoal uma duvida pa fazer um update a uma base de dados atraves de asp usamos procedimentos identicos ao do select tais como executenonquery ou ha necessidade de outras funçoes?se puderem deixar um codigo generico era brutal abraços Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Maio 29, 2008 Para executar comandos de insert, update e delete em um banco utilize o ExecuteNonQuery. Vou te deixar um exemplo. VerificaCon(1); //Abre Conexão SqlCommand cmd = new SqlCommand(vSql, vSqlConnection); cmd.ExecuteNonQuery(); cmd.Dispose(); VerificaCon(2); // Fecha Conexão Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
pumlala 0 Denunciar post Postado Maio 29, 2008 pois eu tbm a pouco descobri que o nonquery server pa update delete e select o grave e a sintaxe do comando delete e update pq quando faço Dim strSQL1 As New OleDbCommand("DELETE FROM `Encomenda` WHERE `NumEncomenda` ='" + strvar1 + "' ", dbconn)nao me da erro mas a base de dados continua igual nao apaga e o mesmo se passa para o updateo meu codigo ja agr <%@ Page Language="VB" AutoEventWireup="false" CodeFile="tipo.aspx.vb" Inherits="_Default" %> <%@Import Namespace="System.Data.OleDb" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Public Sub gridview1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Dim numerocelula As Integer = Convert.ToInt32(e.CommandArgument) Dim strvar As Date = Convert.ToString(GridView1.Rows(numerocelula).Cells(1).Text) Dim numerocelula1 As Integer = Convert.ToInt32(e.CommandArgument) Dim strvar1 As String = Convert.ToString(GridView1.Rows(numerocelula).Cells(0).Text) If DateDiff(DateInterval.Day, DateTime.Now(), strvar) <> 0 Then Response.Write("Ja passa uma dia da encomenda impossivel cancelar") Dim dbconn As New OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("App_Data\livraria.mdb")) dbconn.Open() Dim strSQL1 As New OleDbCommand("DELETE FROM `Encomenda` WHERE `NumEncomenda` ='" + strvar1 + "' ", dbconn) End If End Sub </script> <html> <head> <body> <STYLE type=text/css>BODY { BACKGROUND-IMAGE: url(estante.jpg) }</STYLE> <form id="form1" runat="server"> <% TextBox1.Text = Session.Contents(0) If Session("codcliente") <> "" Then%> <asp:TextBox ID="TextBox1" visible="true" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="Ok" /> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowCommand="gridview1_RowCommand" DataSourceID="AccessDataSource1" EmptyDataText="Quer ver as suas encomendas?"> <Columns> <asp:BoundField DataField="NumEncomenda" HeaderText="NumEncomenda" SortExpression="NumEncomenda" /> <asp:BoundField DataField="DataEncomenda" HeaderText="DataEncomenda" SortExpression="DataEncomenda" /> <asp:BoundField DataField="CodCliente" HeaderText="CodCliente" SortExpression="CodCliente" /> <asp:BoundField DataField="Descricao" HeaderText="Descricao" SortExpression="Descricao" /> <asp:BoundField DataField="Quantidade" HeaderText="Quantidade" SortExpression="Quantidade" /> <asp:BoundField DataField="PrecoVenda" HeaderText="PrecoVenda" SortExpression="PrecoVenda" /> <asp:ButtonField ButtonType="Button" CommandName="Select" HeaderText="Cancelar" ShowHeader="True" Text="Cancelar" /> </Columns> </asp:GridView> <asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="App_Data\livraria.mdb" SelectCommand="SELECT Encomenda.NumEncomenda, Encomenda.DataEncomenda, Encomenda.CodCliente, Artigo.Descricao, LinhaEncomenda.Quantidade, LinhaEncomenda.PrecoVenda FROM ((Encomenda INNER JOIN LinhaEncomenda ON Encomenda.NumEncomenda = LinhaEncomenda.NumEncomenda) INNER JOIN Artigo ON LinhaEncomenda.CodArtigo = Artigo.CodArtigo) WHERE (Encomenda.CodCliente = ?)"> <SelectParameters> <asp:ControlParameter ControlID="TextBox1" Name="TextBox1" PropertyName="Text" /> </SelectParameters> </asp:AccessDataSource> <% else: %> <script language="javascript"> window.alert("É necessario fazer login"); window.location="apresentaçao.htm"; </script> <% End if %> </form> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Maio 29, 2008 Postou seu código mas... deu certo? deu algum erro? usou o script que eu passei? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
pumlala 0 Denunciar post Postado Maio 29, 2008 nao deu erro nenhum no meu codigo agr com o script que me passas te desculpa mas onde e que o deva colocar?? abraços Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Maio 29, 2008 É o script que irá usar para executar os comandos em seu banco, no lugar de vSql você deve passar seu comando, delete, update ou insert. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
pumlala 0 Denunciar post Postado Maio 29, 2008 ahh bom pera mas a minha duvida ta mesmo no vsql pq eu nao conxigo achar a sintaxe coreecta de delete nem do update e msmo na sintzxe dos comandos que eu enho duvida mesmo em sql Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Maio 29, 2008 Mas ae o problema não é bem .net, você esta com problemas com comandos Sql. Mas bem, qual sua dúvida exatamente, não sabe como fazer um update? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
pumlala 0 Denunciar post Postado Maio 29, 2008 strSQL7.ExecuteNonQuery() Dim teste4 As OleDbDataReader = strSQL7.ExecuteReader() Dim quantdisponivel As Integer While teste4.Read() quantdisponivel = (teste4(0).ToString()) End While Dim actquan As Integer actquan = quantdisponivel - Request.Form("caixa" & i) Dim strSQL6 As New OleDbCommand("UPDATE SET QuantDisponivel = " & actquan & " FROM Artigo WHERE CodArtigo='" & Session.Contents(i) & "' )", dbconn) funcao = funcao + 1 Nextneste codigo nao consigo fazer o update mas ao por o execurte nonquery da me erro a dizer que a sintaxe e errada!que sepassa? Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Maio 30, 2008 você não postou qual comando esta sendo executado no seu Execute!! Abraços... Compartilhar este post Link para o post Compartilhar em outros sites