16. marts 2006 - 15:53Der er
11 kommentarer og 1 løsning
Konstruktion af Update
Jeg har en database, hvor jeg har udtrukket noget data fra. SÅ har jeg modificeret det igen gennem nogle textboxe. Så vil jeg gerne opdatere databasetabellen, men hvordan gøres dette?
Jeg tror, jeg har styr på selve UPDATE-sætningen, men jeg har lidt problemer med forbindelsen til databasen og selve opdateringen.
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Nu ved jeg ikke om du koder i VB eller C#, men jeg har her et eksempel på hvordan jeg har gjort med en editor. Henter data ind i editoren, kan ændre dataene, og så uploade det igen.
<script language="VB" runat="server"> Dim sConn As String="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("database/data2.mdb") Dim sSQL As String Dim oConn As OleDbConnection Dim oCommand As OleDbCommand Dim oDataReader As OleDbDataReader
Sub Page_Load(Source As Object, E As EventArgs) If Not Page.IsPostBack Then oConn=New OleDbConnection(sConn) oConn.Open()
sSQL="Select * From Content where id=1" oCommand=New OleDbCommand(sSQL,oConn)
oDataReader=oCommand.ExecuteReader() Do While oDataReader.Read()=true inpTitle.Text=oDataReader("title") oEdit1.Content=oDataReader("content") Loop oDataReader.Close() oConn.Close() End If End Sub
Sub Button1_Click(Source As Object, E As EventArgs) oConn=New OleDbConnection(sConn) oConn.Open()
sSQL="Update content set title='" & Replace(inpTitle.Text,"'","''") & "', content='" & Replace(oEdit1.Content,"'","''") & "' where id=1"
Ja, jeg programmerer i c#. Så hvis jeg kunne se et eksempel i c#, så ville det da være dejligt ;-)
Parameters? Hm, tjo, det vil jeg da gerne se bare for en god ordens skyld. Men jeg tror nu ikke, det er aktuelt. For brugeren skal nemlig se de data, der skal rettes i, lave ændringer, og så skal ændringerne foretages. Så der skal vel benyttes en UPDATE?
Okay - jeg ved ikke noget omsql-injections. Så det vil jeg da også gerne høre om. Replace har jeg heller aldrig hørt om...selvom den står ovenover. Er det fordi, den er forbeholdt vb?
Ja gør som arne_v skriver, brug parameters så er du fri for at skulle bruge den replace ting. C# er ikke mit hjørne, men prøv at se om ikke du kan få dette til at virke (Det er oversat ved hjælp af en translater)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.