Just nu i M3-nätverket
Gå till innehåll

Hittar inte nätverkssökvägen + ok uppbyggnad?


Mossberg

Rekommendera Poster

 

Ok, i sql frågan kan du använda ett mer generellt alias för förnamn och efternamn, du kan tom sätta ihop dem till ett fält om du vill.

 

Tex:

 

"SELECT [Förnamn] AS [Name1], [Efternamn] As [Name2] FROM [Användare] ORDER BY [Förnamn]"

 

Du ändrar frågan som tidigare beroende på valet, dvs kastar om ordningen på förnamn och efternamn.

 

I koden sedan kan du skriva:

 

<%# DataBinder.Eval(Container.DataItem, "Name1") %>

<br>

<%# DataBinder.Eval(Container.DataItem, "Name2") %>

 

Eller sätt ihop namnet direkt:

 

"SELECT [Förnamn] + ' ' + [Efternamn] As [Name] FROM [Användare] ORDER BY [Förnamn]"

 

Sedan:

 

<%# DataBinder.Eval(Container.DataItem, "Name") %>

 

 

[inlägget ändrat 2004-08-30 15:41:27 av PBL]

Länk till kommentar
Dela på andra webbplatser

...du får poäng imorrn, inga kvar idag. Knepigt d där.

 

Jag tror det är fem poäng per tråd och användare / dag ? Är inte helt säker, står heller inget under "så fungerar eforum" men jag tycker mig minnas det från åratal sedan när det diskuterades.

 

Länk till kommentar
Dela på andra webbplatser

Hur gör jag för att skriva till databasen, har provat med detta (som inte funkar):

 

void Uppdatera(object obj, EventArgs e)

{

 

SqlConnection Koppling = new SqlConnection("Data Source=henrik; Initial Catalog=bilar;

 

Integrated Security=SSPI");

 

Koppling.Open();

 

SqlDataAdapter myAdapter = new SqlDataAdapter("INSERT INTO EgnaBilar (Märke, Modell, Årsmodell, Motor, Färg) VALUES ([tbMärke.Text], [tbModell.Text],[tbÅrsmodell.Text],[tbMotor.Text],[tbFärg.Text])", Koppling);

 

Koppling.Close();

 

Länk till kommentar
Dela på andra webbplatser

SqlConnection Koppling = new SqlConnection("Data Source=henrik; Initial Catalog=bilar;Integrated Security=SSPI");

 

SqlDataCommand = new SqlDataCommand(Koppling)

SqlDataCommand.Connection.Open()

SqlDataCommand.ExecuteNonQuery("INSERT INTO EgnaBilar (Märke, Modell, Årsmodell, Motor, Färg) VALUES (tbMärke.Text, tbModell.Text ,tbÅrsmodell.Text, tbMotor.Text, tbFärg.Text)")

SqlDataCommand.Connection.Close

 

[ och ]-tecken använder man bara vid tabellnamnen om man är osäker på att man använder ett reserverat sql-namn som tex text och username.

 

Edit. Oj! Ser att jag gjort fel när jag hämtar värdena. Glömt '"+ variabel +"'. Använd PBL's sqlkod men du kan använda resten av min kod.

[inlägget ändrat 2004-08-30 17:44:55 av Patrik Ahlberg]

Länk till kommentar
Dela på andra webbplatser

Du får appenda värderna till sql frågan:

 

"INSERT INTO EgnaBilar (Märke, Modell, Årsmodell, Motor, Färg) VALUES ('" + tbMärke.Text + "','" + tbModell.Text + "','" + tbÅrsmodell.Text + "','" + tbMotor.Text + "','" + tbFärg.Text + "')"

 

Det finns andra sätt, genom att använda ett dataset, men för ett fåtal värden är metoden som du använder absolut enklast.

 

En sak att komma ihåg när du kör metoden ovan är att du bör alltid se till att plocka bort single qoutes frn värderna, dvs ' annars kan folk stöpa om frågan och du får problem med sk sql injection.

 

Länk till kommentar
Dela på andra webbplatser

Hej!

 

Du kan även köra objConn.Dispose(); då den både stänger och återlämnar minnesutrymme för databaskopplingen. Kör den gärna direkt efter att du är klar med databaskopplingen. Då lämnas den tillbaka till Connection Pool (enkelt uttryckt cachning av databaskopplingar).

 

Mvh

 

Jimmy

 

 

Länk till kommentar
Dela på andra webbplatser

Skumt, jag skrev ett inlägg här igår kväll, men d kom aldrig med.

Hursomhelst så fick jag ingen ordning på det där med att skriva till databasen.

 

Jag provade att ändra till SqlDataCommand MittKommando = ..... o ersatta med MittKommando där SqlDataCommand stod.

Sen provade jag med SqlCommand eftersom det inte verkar som att SqlDataCommand finns?

Det funkar dock fortfarande inte även om det verkar som att SqlCommand är giltigt. Har även använt mig av '" + xxxxxx + "'.

 

What to do?

 

Länk till kommentar
Dela på andra webbplatser

Appenda värderna till frågan måste du göra om du vill ha med dem.

 

Testa detta:

 

// Connection string

string connstr = "Data Source=henrik;Initial Catalog=bank;Integrated Security=SSPI";

 

// Sql frågan

string sqlstr = "INSERT INTO EgnaBilar (Märke, Modell, Årsmodell, Motor, Färg) VALUES ('" + tbMärke.Text + "','" + tbModell.Text + "','" + tbÅrsmodell.Text + "','" + tbMotor.Text + "','" + tbFärg.Text + "')";

 

// Skapa en koppling och öppna

SqlConnection objconn = new SqlConnection(connstr);

objconn.Open();

 

// Skapa ett command objekt

SqlCommand objcommand = new SqlCommand(sqlstr, objconn);

 

// Kör frågan, vi väntar oss inget tillbaka

objcommand.ExecuteNonQuery();

 

// Stäng

objconn.Close();

 

 

[inlägget ändrat 2004-08-31 10:18:39 av PBL]

Länk till kommentar
Dela på andra webbplatser

Ytterligare en funktion jag önskar är att lägga in ett specifikt ID för varje bil.

Jag har lagt till denna kolumn som primärnyckel ID i Databasen och kan lägga in detta värde (int) manuellt, men hur gör jag för att detta ska ske automatiskt (eg lägga in nytt nummer för varje inlagd post)?

 

Alltså ung:

lägg in ny post

hämta värdet på ID

addera 1 till detta och koppla till den nya posten

 

 

Länk till kommentar
Dela på andra webbplatser

Oj vad du frågar om allt :-) Kanske köpa lite böcker ;-) ?

 

o Öppna enterprise manager

o Öppna tabellen i design mode

o Skapa en kolumn och kalla den något lämpligt som "ID" tex, välj "int" som datatyp.

o Högerklicka ute i vänstra kanten där du har en pil som markerar raden, välj "set primary key"

o Gå ned längst nere under "columns" tabben och välj "Yes" där det står Identity, spara ändringarna.

 

Du kan också köra en UNIQUEIDENTIFIER som datatyp, gör samma sak som ovan fast med dessa ändringar:

 

o Välj datatyp UNIQUEIDENTIFIER

o Under "columns" längst ned välj "Yes" under "IsRowguid"

 

 

Länk till kommentar
Dela på andra webbplatser

Jo d blir lite frågor, böckerna förklarar på klurigt sätt, dels är de skrivna i vb.net så det blir en del konverteringsproblem men det börjar lossna nu. Sen är det ju SQL-delen som inte heller är ngt vidare beskrivet.

Ovanpå detta så är exemplen lite osammanhängande o svåra att förstå för en nybörjare, men det börjar ändå släppa nu känns det som. Har hyfsad kontroll över C# syntax o SQL-delen har ju ni hjälpt till med en hel del, sen är det att bläddra fram o tillbaka i böckerna så kan man pussla ihop exemplen till det man önskar.

 

Tack för hjälpen med ID-grejen, det funkar fint.

 

En fråga till om detta: Hur gör man om man sen vill skapa ett lösenord (e g slumpat värde) som id?

 

Länk till kommentar
Dela på andra webbplatser

Du kan ju alltid använda dig av funktionen newid() i SQL Server för att generera slumpmässiga lösenord/unika värden. Använd t ex nedanstående för att generera ett lösenord med lämplig längd

 

select newid()
select left(replace(newid(),'-',''),16)
select left(newid(),8)

 

/Jimmy

 

 

Länk till kommentar
Dela på andra webbplatser

Ok, kan du utveckla lite hur jag får in den i koden, ska den ligga i följd i SQL-satsen med typ INSERT eller? Förstår inte.

 

 

Sen har jag problem att konvertera följande VB.NET-rad till C#:

 

function CreateDataset as DataSet

[inlägget ändrat 2004-09-02 10:06:21 av Mossberg]

Länk till kommentar
Dela på andra webbplatser

Sen har jag problem att konvertera följande VB.NET-rad till C#:

function CreateDataset as DataSet

 

DataSet CreateDataset()

{

 

}

 

 

[inlägget ändrat 2004-09-02 13:21:46 av PBL]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...