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


Databas med C#

Postades av 2009-02-03 17:13:17 - Torbjörn Karlsson, i forum c# (c-sharp), Tråden har 7 Kommentarer och lästs av 898 personer

Har en testkod nedan med syftet att bara hämta en post ur en tabell och visa en post i en label.
Det fungerar, bortsett från att värdet jag får är siffran 4. Fältet i databasen innehåller text. I databasen finns 4 poster, om det nu är det som visas !?

Vad missar jag här när jag försöker hämta databasposten.


protected void Button1_Click(object sender, EventArgs e)
{
// SQL-fråga
string Sql = "SELECT fnamn FROM tbtest";

// Instans
OleDbConnection lab3ConnectionString = new OleDbConnection();
lab3ConnectionString.ConnectionString = WebConfigurationManager.ConnectionStrings["lab3ConnectionString"].ConnectionString;

// Instans
OleDbCommand myCommand = new OleDbCommand(Sql, lab3ConnectionString);

// Instans
DataSet ds = new DataSet();

// Instans
OleDbDataAdapter myAdapter = new OleDbDataAdapter();
myAdapter.SelectCommand = myCommand;

lab3ConnectionString.Open();

Label1.Text = (Convert.ToString(myAdapter.Fill(ds, "fnamn")));
}


//Torbjörn


Svara

Sv: Databas med C#

Postades av 2009-02-03 17:54:33 - Johan Djupmarker

Ja, det är nog antalet poster du får ut på det sättet. Är det första posten du vill visa? Testa i sådana fall (skrivet ur huvudet, så det innehåller säkert småfel):

myAdapter.Fill(ds, "fnamn");
if (ds.Tables[0].Rows.Count > 0)
{
Label1.Text = ds.Tables[0].Rows[0]["fnamn"].ToString();
}

/Johan


Svara

Sv:Databas med C#

Postades av 2009-02-03 18:31:11 - Torbjörn Karlsson

Hej


Resultat blir tyvärr detsamma som innan, "4"

Det jag vill se är i själva verket innehållet i fältet "Pelle" eller "kalle". Inte en siffra :-)
Koden är som sagt bara i testsyfte för att lära mig hantera databaser i ASP.NET.

Ändrar jag SQL-frågan till detta, så får jag värdet "1", inte "Pelle" som det borde
string Sql = "SELECT fnamn FROM tbtest WHERE enamn='Persson'";


//Torbjörn


Svara

Sv: Databas med C#

Postades av 2009-02-03 19:09:35 - Oskar Johansson

Kan du skriva ut koden du använder? (För jag tror inte den ser ut som den Johan skrev nämligen ;) )


Svara

Sv:Databas med C#

Postades av 2009-02-03 19:33:43 - Torbjörn Karlsson

Hej

Nej det har du rätt i, jag missade en rad i Johans kod, Tack för påpekandet

Nu får jag helt riktigt ut rätt innehåll.

Jag inte har full koll på ADO.NET ännu, inte ASP.NET eller C# heller om jag vara uppriktig. På något sätt känns det som jag överjobbar det här med databasen. Är min kod i övrigt ett vettigt sätt att göra en enkel uppgift som jag försökt göra här eller går det att förenkla.

en annan kort fråga på samma gång:
Om jag vill konkatenera i samma label. Mitt exempel nedan funkar inte

Label1.Text = ds.Tables[0].Rows[0]["fnamn"]+" "+["enamn"].ToString();

mvh
Torbjörn


Svara

Sv: Databas med C#

Postades av 2009-02-03 21:04:15 - Oskar Johansson

Hurvida den är vettig eller itne kan jag inte svara på (men det känns lite, lite som att skjuta mygg med kanon :) ), däremot har du ett fel i koden du funderade på sist.

Istället för:
Label1.Text = ds.Tables[0].Rows[0]["fnamn"]+" "+["enamn"].ToString();

borde det vara:
Label1.Text = ds.Tables[0].Rows[0]["fnamn"]+" "+ds.Tables[0].Rows[0]["enamn"].ToString();


Svara

Sv: Databas med C#

Postades av 2009-02-03 22:08:17 - Johan Djupmarker

<b>Är min kod i övrigt ett vettigt sätt att göra en enkel uppgift som jag försökt göra här eller går det att förenkla.</b>

Jag skulle skippat datasetet:

protected void Button1_Click(object sender, EventArgs e)
{
// SQL-fråga
string Sql = "SELECT fnamn FROM tbtest";

// Instans
OleDbConnection lab3ConnectionString = new OleDbConnection();
lab3ConnectionString.ConnectionString = WebConfigurationManager.ConnectionStrings["lab3ConnectionString"].ConnectionString;

// Instans
OleDbCommand myCommand = new OleDbCommand(Sql, lab3ConnectionString);

lab3ConnectionString.Open();

Label1.Text = myCommand.ExecuteScalar().ToString();
}

/Johan


Svara

Sv:Databas med C#

Postades av 2009-02-03 22:33:24 - Torbjörn Karlsson

Lysande... jag försöker nedgradera från kanon till flugsmälla och myggspray. Hoppas jag lyckas :-)

Både datainstansen och konkateneringen är bättre än det jag åstadkommit.

Jag stoppade in alla fält i variabler och konkatenerade dem i label, det är väl ett sätt göra
det på men det är skoj att se andra.

Jag lär nog återkomma med fler frågor här framöver känns det som.

STORT TACK FÖR ER HJÄLP !!!!


mvh
Torbjörn


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

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 570 699
27 958
271 741
721
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