Permalänk

Problem med databas till textfil

Hej! Försöker få min databas data till textboxar , för att sedan spara det i fil. Men det fungerar inte.
Textboxarna blir bara tomma fast det finns mänger med "value" i databasen , behövs kanske en knapp "Button"?

Här är min nuvarande kod:

class toBox { static void main() { string word; StreamWriter sw = new StreamWriter("text.txt"); sw.Close(); StreamReader sr = new StreamReader("text.txt"); while (!sr.EndOfStream) { word = sr.ReadLine(); Console.WriteLine(word); } } } private void textBox1_TextChanged(object sender, EventArgs e) { using (SqlConnection logg = new SqlConnection(@Min connection string är här)) { SqlCommand cd = new SqlCommand("SELECT * FROM [*MIN DATABAS TABLE NAMN*] Id = @Id AND Namn = @Namn AND Efternamn = @Efternamn AND Email = @Email", logg); logg.Open(); cd.Parameters.AddWithValue("@Id", "Id"); cd.Parameters.AddWithValue("@Namn", "Namn"); cd.Parameters.AddWithValue("@Efternamn", "Efternamn"); cd.Parameters.AddWithValue("@Email", "Email"); SqlDataReader set = cd.ExecuteReader(); cd.CommandType = CommandType.Text; while (set.Read()) { new toBox(); //För att koppla in streamwriter och reader, men tror att detta inte är korrekt(?) textBox1.Text = (set["Id"].ToString()); textBox2.Text = (set["Namn"].ToString()); textBox3.Text = (set["Efternamn"].ToString()); textBox4.Text = (set["Email"].ToString()); } logg.Close(); } }

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem

Ett fel verkar vara att du saknar ett "WHERE" i din SELECT-sats.

Permalänk
Skrivet av iXam:

Ett fel verkar vara att du saknar ett "WHERE" i din SELECT-sats.

Oj, såg det haha. Men det fungerar ändå inte som det ska.
Trodde värdet skulle synas här? :
Imgur länk

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem

Du försöker bara ladda från databasen till textfälten när texten ändras i textfältet. du vill nog trigga koden på något annat ställe. då
1: Du måste skriva något i textfältet för att den ska köra din kod
2: Då den kör koden och byter ut texten, så ändras ju texten och den kommer köra koden om och om och om och om igen..

Visa signatur

CPU: Ryzen 9 3900x Noctua NH-D14 MOBO: TUF Gaming X570-PLUS GPU: GTX 980 RAM: 32 GB 3200 MHz Chassi: R4 PSU: Corsair AX860 Hörlurar: SteelSeries 840 Mus: Logitech G502 Lightspeed V.v. nämn eller citera mig för att få svar.

Permalänk
Skrivet av Haptic:

Du försöker bara ladda från databasen till textfälten när texten ändras i textfältet. du vill nog trigga koden på något annat ställe. då
1: Du måste skriva något i textfältet för att den ska köra din kod
2: Då den kör koden och byter ut texten, så ändras ju texten och den kommer köra koden om och om och om och om igen..

Hade ju ingen button heller *Dumskalle*
Gjorde om lite och "förenklade" men nu blir det att connection är stängd?
Länk: http://imgur.com/a/mBKHo

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem
Skrivet av LadyKurczak:

Hade ju ingen button heller *Dumskalle*
Gjorde om lite och "förenklade" men nu blir det att connection är stängd?
Länk: http://imgur.com/a/mBKHo

prova

sqlcon.Open();

Visa signatur

CPU: Ryzen 9 3900x Noctua NH-D14 MOBO: TUF Gaming X570-PLUS GPU: GTX 980 RAM: 32 GB 3200 MHz Chassi: R4 PSU: Corsair AX860 Hörlurar: SteelSeries 840 Mus: Logitech G502 Lightspeed V.v. nämn eller citera mig för att få svar.

Permalänk
Skrivet av Haptic:

prova

sqlcon.Open();

Finns ju redan?

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem
Skrivet av LadyKurczak:

Hade ju ingen button heller *Dumskalle*
Gjorde om lite och "förenklade" men nu blir det att connection är stängd?
Länk: http://imgur.com/a/mBKHo

Vad jag ser så saknar du lite delar i din sql fråga.

WHERE Id, Namn, Efternamn, Email

Du beskriver aldrig vad det ska vara lika med för något.

Edit: Du verkar ha med det i dina första post, så du tappade kanske bort det på vägen.

Permalänk
Skrivet av noyce:

Vad jag ser så saknar du lite delar i din sql fråga.

WHERE Id, Namn, Efternamn, Email

Du beskriver aldrig vad det ska vara lika med för något.

Edit: Du verkar ha med det i dina första post, så du tappade kanske bort det på vägen.

Prövar med både ock, dock är detta inte problemet nu

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem
Skrivet av LadyKurczak:

Prövar med både ock, dock är detta inte problemet nu

Testa att flytta upp sqlcon.Open() ovanför din executereader. Du öppnar din anslutning först efter, och den klagar på att du inte har någon anslutning.

Permalänk
Skrivet av noyce:

Testa att flytta upp sqlcon.Open() ovanför din executereader. Du öppnar din anslutning först efter, och den klagar på att du inte har någon anslutning.

Haha! Gjorde det precis innan jag kikade här

String Query = SELECT * FROM [Table som är min databas "namn i Create table" ] WHERE Id = @Id, Namn = @Namn, Efternamn = @Efternamn, Email = @ Email;

Så blir @ Id felmeddelande, tas allt bort så blir " , " felmeddelande... Suck :8

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk
Medlem
Skrivet av LadyKurczak:

Haha! Gjorde det precis innan jag kikade här

String Query = SELECT * FROM [Table som är min databas "namn i Create table" ] WHERE Id = @Id, Namn = @Namn, Efternamn = @Efternamn, Email = @ Email;

Så blir @ Id felmeddelande, tas allt bort så blir " , " felmeddelande... Suck :8

String Query = SELECT * FROM [Table som är min databas "namn i Create table";

Med denna rad bör du få ut alla rader i din tabell. Annars ser det ut som att du har rätt syntax i din första post. Vanligtvis om man vill ha flera villkor så brukar det vara ett AND eller ett OR emellan dem, precis som du har i din första post. Om du får felmeddelande @Id eller liknande kanske du glömmer att lägga in dem som parametrar?

cd.Parameters.AddWithValue("@Id", "Id");

Permalänk
Skrivet av noyce:

String Query = SELECT * FROM [Table som är min databas "namn i Create table";

Med denna rad bör du få ut alla rader i din tabell. Annars ser det ut som att du har rätt syntax i din första post. Vanligtvis om man vill ha flera villkor så brukar det vara ett AND eller ett OR emellan dem, precis som du har i din första post. Om du får felmeddelande @Id eller liknande kanske du glömmer att lägga in dem som parametrar?

cd.Parameters.AddWithValue("@Id", "Id");

Har både prövat det och AND. Funderar på att kanske lägga in med "Details" och sedan bara blockera för rutan "Read only".. :/

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#

Permalänk

LÖST.

Har löst problemet själv.

Visa signatur

Define R4 | i5 4460k | ASUS Z97 | 8GB Corsair | Nvidia GeForce GTX960 | Samsung SSD 840 EVO 250GB | Dota2 | C#