Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Programmering og webdesign \ Programmering
Denne tråd er over 6 måneder gammel

Er du sikker på, at du har noget relevant at tilføje?

C# Insert Into

Af Giga Supporter LBan | 07-01-2009 13:26 | 1112 visninger | 6 svar, hop til seneste
Hej Hvordan får jeg denne til at insert into? SqlConnection myConnection = new SqlConnection("user id=***;" + "password=***;server=it-soft.dk;" + "database=***; " + "connection timeout=30"); myConnection.Open(); SqlCommand myCommand = new SqlCommand("insert into users (username) values ('testbruger')", myConnection); Altså hvordan man får den til at execute
--
Im programing ASP, C# and .NET Dis`Que - http://www.disque.dk[...] http://www.midtdata.dk[...]
#1
ice
Gæst
07-01-2009 13:43

Rapporter til Admin
du skal lige lave en reader som du smider det hele over i, og så husk at execute din command noget ala myConnection.Open(); SqlCommand objCmd = new SqlCommand(); objCmd.Connection = myConnection; objCmd.CommandText = dinQuery; SqlDataReader objRdr = objCmd.ExecuteReader(); objRdr.Close();
--
Gæstebruger, opret dit eget login og få din egen signatur.
#2
LBan
Giga Supporter
07-01-2009 13:54

Rapporter til Admin
Takker det virker :)
--
Im programing ASP, C# and .NET Dis`Que - http://www.disque.dk[...] http://www.midtdata.dk[...]
#3
ice
Gæst
07-01-2009 14:05

Rapporter til Admin
var så lidt, husk også at lukke database forbindelsen, i mit svar lukkede jeg kun readeren ;)
--
Gæstebruger, opret dit eget login og få din egen signatur.
#4
ZazzY
Elite Supporter
07-01-2009 14:06

Rapporter til Admin
Dette også en mulighed. Lidt mindre kode og med fejlhåndtering :) try { myConnection.Open(); SqlCommand cmd = new SqlCommand("Insert Into Bla bla bla", myConnection); cmd.ExecuteScalar(); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { if (myConnection != null) myConnection.Close(); }
--
| P5N32-E SLI Plus | Intel Core 2 Quad(Q6600) - 2.4 @ 3.6 | 2x1Gb Corsair Dominator XMS2 PC6400 | Club 3D 9800GX2 | Seagate 320Gb(Raid 0) |
#5
Nubi
Mega Nørd
07-01-2009 17:06

Rapporter til Admin
Reelt bør du bruge cmd.ExecuteNonQuery() når den ikke selecter noget som helst ud. Derudover er using meget fiksere end try-finally, samt catch er generelt dårlig skik, da du mister information når du fanger en exception. (Det er bedre skik at lade exceptions "boble" op gennem call stakken) Koden ser således sådanne ud: using (SqlConnection myConnection = new SqlConnection("user id=***;" + "password=***;server=it-soft.dk;& + "database=***; " + "connection timeout=30")) { using (SqlCommand myCommand = new SqlCommand("insert into users (username) values ('testbruger')", myConnection)) { myConnection.Open(); myCommand.ExecuteNonQuery(); } } Reelt bør du bruge en parameteriseret query, hvis værdien "testbruger" stammer fra user input. Hvis du ikke gør, er din kode åben for SQL Injection angreb. Men det kan du jo læse lidt op på, til når du får brug for det :-)
--
http://steffenskov.homepage.dk[...]
#6
Nubi
Mega Nørd
07-01-2009 17:13

Rapporter til Admin
Hmm nå jeg kunne ikke lade være at skrive koden alligevel :-D Sådan ser det ud med en parameteriseret query: using (SqlConnection myConnection = new SqlConnection("user id=***;" + "password=***;server=it-soft. + "database=***; " + "connection timeout=30")) { using (SqlCommand myCommand = new SqlCommand("insert into users (username) values (@UserName)", myConnection)) { myCommand.Parameters.Add(New SQLParameter("@UserName", "testbruger")); myConnection.Open(); myCommand.ExecuteNonQuery(); } } Bemærk at du ikke længere skal bruge apostrof (') omkring tekster, da parameteren er stærkt typet, og dermed ved databasen det er en tekst.
--
http://steffenskov.homepage.dk[...]

Opret svar til indlægget: C# Insert Into

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning


ANNONCE