Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Insert data till SQL

Postades av 2004-05-19 12:02:05 - Per Karlsson, i forum asp.net generellt, Tråden har 12 Kommentarer och lästs av 586 personer

Jag använder Visuel Studio 7, och har lagt dit SQL-dataadapter och sqlconnection och kod är skapad av Visuel studio, hur gör jag för att lägga till Data till SQL ?, något är fel, eller måste jag skriva databaskopplingen och insert till SQL manuellt ?

Det som jag inte jag inte får att fungerar är kopplingen från htmlkod och till sub-rutinen för insert i SQL

jag använder asp:textbox och asp:button och forms, och allt är skapat visuelt,


Kod från Visuell Studio

'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Sub InitializeComponent()
Me.SqlDataAdapter1 = New System.Data.SqlClient.SqlDataAdapter
Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection
Me.SqlInsertCommand1 = New System.Data.SqlClient.SqlCommand
CType(Me.DataSetpersonal1, System.ComponentModel.ISupportInitialize).BeginInit()
'
'SqlDataAdapter1
'
Me.SqlDataAdapter1.InsertCommand = Me.SqlInsertCommand1
Me.SqlDataAdapter1.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "odrutdelare",
New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("idutdelare", "idutdelare"), New System.Data.Common.DataColumnMapping("namn", "namn"),
New System.Data.Common.DataColumnMapping("adress", "adress"),



Me.SqlConnection1.ConnectionString = "pubstring"

'SqlInsertCommand1
'
Me.SqlInsertCommand1.CommandText = "[odrpersonalInsertCommand]"
Me.SqlInsertCommand1.CommandType = System.Data.CommandType.StoredProcedure
Me.SqlInsertCommand1.Connection = Me.SqlConnection1
Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, False, CType(0, Byte), CType(0, Byte), "", System.Data.DataRowVersion.Current, Nothing))
Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@namn", System.Data.SqlDbType.VarChar, 50, "namn"))
Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@adress", System.Data.SqlDbType.VarChar, 50, "adress"))



End Sub
Protected WithEvents SqlDataAdapter1 As System.Data.SqlClient.SqlDataAdapter
Protected WithEvents SqlConnection1 As System.Data.SqlClient.SqlConnection
Protected WithEvents SqlInsertCommand1 As System.Data.SqlClient.SqlCommand
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents namn As System.Web.UI.WebControls.TextBox


'NOTE: The following placeholder declaration is required by the Web Form Designer.
'Do not delete or move it.
Private designerPlaceholderDeclaration As System.Object



Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub





och sedan HTML-kod, någonstans här är det fel;
det är kopplingen till SqlInsertCommand1 från html-kod som inte fungerar,
jag skickar väl fel kommandon till SqlInsertCommand1 (sub page_init)



<HTML>

<body>
<form id="Form1" onsubmit="SqlInsertCommand1" method="post" runat="server">

<asp:TextBox id="namn" runat="server"></asp:TextBox>

<asp:Button id="Button1" OnClick="page_init"
OnCommand="ME.SqlInsertCommand1"
runat="server" Text='Skicka'
CommandArgument="SqlInsertCommand1"
CommandName="SqlInsertCommand1"></asp:Button>
</body>
</HTML>



Svara

Sv: Insert data till SQL

Postades av 2004-05-19 16:52:00 - Andreas Håkansson

Per,

Jag tror inte det finns någon som orkar läsa igenom hela din kod, men ta gärna en titt på http://samples.gotdotnet.com/quickstart/winforms/doc/DataAccessPlaceHolder.aspx för genomgång hur databasarbete fungerar från .NET

//Andreas


Svara

Sv: Insert data till SQL

Postades av 2004-05-19 18:35:04 - Per Karlsson

Nu har jag kortat ned koden och har bara tagit med det som är till SqlInsertCommand1,

Men det är kopplingen till SqlInsertCommand1 från html-kod som inte fungerar,
jag skickar väl fel kommandon till SqlInsertCommand1 (sub page_init)


Svara

Sv: Insert data till SQL

Postades av 2004-05-19 19:49:20 - Patrik Dahlén

Var i din sida har du egentligen lagt allt det där? Det ser ut som att du försökt lägga det i InitializeComponent och där ska du inte vara och peta överhuvudtaget.
När du skapar en .aspx sida i VS.NET så har du en region som heter "Web Form Designer Generated Code". Där ska du aldrig röra nånting.
Du ska lägga kod i Page_Load och om du ska skapa funktioner för att hantere events i din sida så lägger du dessa efter Page_Load.

/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nu


Svara

Sv: Insert data till SQL

Postades av 2004-05-19 20:10:48 - Andreas Håkansson

Patrik,

Han har drag&droppat komponenterna på sin WebForm, då hamnar det under InitializeComponent.

//Andreas


Svara

Sv: Insert data till SQL

Postades av 2004-05-19 22:41:02 - Per Karlsson

Hej, min namne.
Kan det vara så enkelt att du missat följande:

SqlInsertCommand1.ExecuteNonQuery()

/PK


Svara

Sv: Insert data till SQL

Postades av 2004-05-21 09:25:56 - Per Karlsson

Jag skrev följande kod, jag öppnade även en databasconnetion då denna inte var öppen,
men vad är det som är fel,

Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.

InitializeComponent()
SqlConnection1.Open()
SqlInsertCommand1.ExecuteNonQuery()
SqlConnection1.Close()
End Sub

felmedelande; System.Data.SqlClient.SqlException: Prepared statement '(@namn varchar(50),@adress varchar(50),@postnr varchar(50),@ort ' expects parameter @namn, which was not supplied.

Jag kommer nu att skriva koden för hand, men jag ville att det skulle fungera visuelt via VS7
(dra och droppa SQL-dataapater, det var inte så lätt)


Svara

Sv: Insert data till SQL

Postades av 2004-05-21 11:11:10 - Patrik Dahlén

Om du skrev den koden så skrev du den alltså i Page_Init och det ska du inte göra. Du ska skriva den i Page_Load. Se mitt inlägg ovan.

Själva felet består i att du kör ett dbanrop med en massa parametrar utan att skicka med parametrarna.

Att göra saker visuellt i VS snabbar upp arbetet men jag tycker att det är viktigt att man lär sig grunderna först så man förstår vad det är programmet gör åt dig.
Med andra ord, bra idé att göra det för hand.

/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nu


Svara

Sv: Insert data till SQL

Postades av 2004-05-22 12:46:24 - Andreas Håkansson

Per,

Löste ditt problem sig eller behöver du mer hjälp? Om du är klar med detta problemet så markera inlägget som antingen <b>löst</b> (om du hittat en lösning - skriva gärna vad den var så andra kan ta del av både fråga och svar) eller <b>stängd</b> (om du inte hittat en lösning men problemet inte är aktuellt längre).

Om du inte löst problemet och vill ha mer hjälp så skriv ett inlägg som beskriver var du står idag med problemet (vad du har provat etc) så skall vi se om vi inte kan hitta en lösning.

//Andreas


Svara

Sv: Insert data till SQL

Postades av 2004-05-22 20:15:54 - Per Karlsson

felet är fortfarande kvar

jag får felmedelandet (hela tiden),

felmedelande; System.Data.SqlClient.SqlException: Prepared statement '(@namn varchar(50),@adress varchar(50),@postnr varchar(50),@ort ' expects parameter @namn, which was not supplied.


Svara

Sv: Insert data till SQL

Postades av 2004-05-22 21:09:09 - Andreas Håkansson

Per,

Ahh! Felet är att det stored procedure som du skall anropa försväntar sig att du skickar in två parametrar medans du bara skickar med två vid ditt anrop

        Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, False, CType(0, Byte), CType(0, Byte), "", System.Data.DataRowVersion.Current, Nothing)) 
        Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@namn", System.Data.SqlDbType.VarChar, 50, "namn")) 
        Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@adress", System.Data.SqlDbType.VarChar, 50, "adress")) 


Du får skicka med de andra två parametrarna med.

//Andreas


Svara

Sv: Insert data till SQL

Postades av 2004-05-24 20:14:26 - Per Karlsson

Kod som skapas av Visuel studio får jag helt enkelt inte att fungera,
det som jag inte får att fungera när jag skapar allt visuelt, hur får jag över datan till SqlInsertCommand1 och att den skrivs ned, koden ska väl inte behövas ändras när den skapas av visusel studio

Men det fungerar när jag skriver koden manuellt;
Här all kod först koden sedan html-kod
(nu med bara en asp:text box och en skicka kapp och en datagrid),
det är bara det "jag hittar inte felet"
-------------------------------------------------------------------------------------------------------

Public Class testsqlinsert
Inherits System.Web.UI.Page

#Region " Web Form Designer Generated Code "

'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim configurationAppSettings As System.Configuration.AppSettingsReader = New System.Configuration.AppSettingsReader
Me.SqlDataAdapter1 = New System.Data.SqlClient.SqlDataAdapter
Me.SqlDeleteCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection
Me.SqlInsertCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlSelectCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlUpdateCommand1 = New System.Data.SqlClient.SqlCommand
Me.DataSettest1 = New redline_vs.DataSettest
CType(Me.DataSettest1, System.ComponentModel.ISupportInitialize).BeginInit()
'
'SqlDataAdapter1
'
Me.SqlDataAdapter1.AcceptChangesDuringFill = CType(configurationAppSettings.GetValue("SqlDataAdapter1.AcceptChangesDuringFill", GetType(System.Boolean)), Boolean)
Me.SqlDataAdapter1.ContinueUpdateOnError = CType(configurationAppSettings.GetValue("SqlDataAdapter1.ContinueUpdateOnError", GetType(System.Boolean)), Boolean)
Me.SqlDataAdapter1.DeleteCommand = Me.SqlDeleteCommand1
Me.SqlDataAdapter1.InsertCommand = Me.SqlInsertCommand1
Me.SqlDataAdapter1.SelectCommand = Me.SqlSelectCommand1
Me.SqlDataAdapter1.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "test", New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("test", "test"), New System.Data.Common.DataColumnMapping("idtest", "idtest")})})
Me.SqlDataAdapter1.UpdateCommand = Me.SqlUpdateCommand1
'
'SqlDeleteCommand1
'
Me.SqlDeleteCommand1.CommandText = "DELETE FROM dbo.test WHERE (idtest = @Original_idtest) AND (test = @Original_test" & _
" OR @Original_test IS NULL AND test IS NULL)"
Me.SqlDeleteCommand1.Connection = Me.SqlConnection1
Me.SqlDeleteCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Original_idtest", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "idtest", System.Data.DataRowVersion.Original, Nothing))
Me.SqlDeleteCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Original_test", System.Data.SqlDbType.VarChar, 10, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "test", System.Data.DataRowVersion.Original, Nothing))
'
'SqlConnection1
'
Me.SqlConnection1.ConnectionString = "pubstring"
'
'SqlInsertCommand1
'
Me.SqlInsertCommand1.CommandText = CType(configurationAppSettings.GetValue("MM_CONNECTION_STRING_redlineice", GetType(System.String)), String)
Me.SqlInsertCommand1.Connection = Me.SqlConnection1
Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@test", System.Data.SqlDbType.VarChar, 10, "test"))
'
'SqlSelectCommand1
'
Me.SqlSelectCommand1.CommandText = "SELECT test, idtest FROM dbo.test"
Me.SqlSelectCommand1.Connection = Me.SqlConnection1
'
'SqlUpdateCommand1
'
Me.SqlUpdateCommand1.CommandText = "UPDATE dbo.test SET test = @test WHERE (idtest = @Original_idtest) AND (test = @O" & _
"riginal_test OR @Original_test IS NULL AND test IS NULL); SELECT test, idtest FR" & _
"OM dbo.test WHERE (idtest = @idtest)"
Me.SqlUpdateCommand1.Connection = Me.SqlConnection1
Me.SqlUpdateCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@test", System.Data.SqlDbType.VarChar, 10, "test"))
Me.SqlUpdateCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Original_idtest", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "idtest", System.Data.DataRowVersion.Original, Nothing))
Me.SqlUpdateCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Original_test", System.Data.SqlDbType.VarChar, 10, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "test", System.Data.DataRowVersion.Original, Nothing))
Me.SqlUpdateCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@idtest", System.Data.SqlDbType.Int, 4, "idtest"))
'
'DataSettest1
'
Me.DataSettest1.DataSetName = "DataSettest"
Me.DataSettest1.Locale = New System.Globalization.CultureInfo("sv-SE")
CType(Me.DataSettest1, System.ComponentModel.ISupportInitialize).EndInit()

End Sub
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents SqlDataAdapter1 As System.Data.SqlClient.SqlDataAdapter
Protected WithEvents SqlConnection1 As System.Data.SqlClient.SqlConnection
Protected WithEvents SqlSelectCommand1 As System.Data.SqlClient.SqlCommand
Protected WithEvents SqlInsertCommand1 As System.Data.SqlClient.SqlCommand
Protected WithEvents SqlUpdateCommand1 As System.Data.SqlClient.SqlCommand
Protected WithEvents SqlDeleteCommand1 As System.Data.SqlClient.SqlCommand
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
Protected WithEvents DataSettest1 As redline_vs.DataSettest
Protected WithEvents test As System.Web.UI.WebControls.TextBox
Protected WithEvents Message As System.Web.UI.HtmlControls.HtmlGenericControl

'NOTE: The following placeholder declaration is required by the Web Form Designer.
'Do not delete or move it.
Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here

SqlDataAdapter1.Fill(DataSettest1)
DataGrid1.DataBind()

InitializeComponent()

End Sub

Private Sub SqlConnection1_InfoMessage(ByVal sender As System.Object, ByVal e As System.Data.SqlClient.SqlInfoMessageEventArgs) Handles SqlConnection1.InfoMessage

End Sub

Sub submit(ByVal sender As Object, ByVal e As EventArgs)
InitializeComponent()
SqlConnection1.Open()
SqlInsertCommand1.ExecuteNonQuery()
SqlConnection1.Close()
End Sub
End Class

-------------------------------------------------------------------------------------------------------


<%@ Page Language="vb" AutoEventWireup="false" Codebehind="testsqlinsert.aspx.vb" Inherits="redline_vs.testsqlinsert"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>test</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:TextBox id="test" style="Z-INDEX: 101; LEFT: 272px; POSITION: absolute; TOP: 208px" runat="server"></asp:TextBox>
<asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 288px; POSITION: absolute; TOP: 248px"
runat="server" Text="skicka" CommandArgument='<%# DataBinder.Eval(SqlDataAdapter1, "InsertCommand") %>' CommandName="page_init">
</asp:Button>
<asp:DataGrid id=DataGrid1 style="Z-INDEX: 103; LEFT: 112px; POSITION: absolute; TOP: 32px" runat="server" DataSource="<%# DataSettest1 %>" DataKeyField="idtest" DataMember="test" BorderColor="White" BorderStyle="Ridge" CellSpacing="1" BorderWidth="2px" BackColor="White" CellPadding="3" GridLines="None">
<SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#9471DE"></SelectedItemStyle>
<ItemStyle ForeColor="Black" BackColor="#DEDFDE"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#E7E7FF" BackColor="#4A3C8C"></HeaderStyle>
<FooterStyle ForeColor="Black" BackColor="#C6C3C6"></FooterStyle>
<PagerStyle HorizontalAlign="Right" ForeColor="Black" BackColor="#C6C3C6"></PagerStyle>
</asp:DataGrid></SPAN>
</form>
</body>
</HTML>


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 166
27 952
271 704
741
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies