Laden...

sql insert will nicht.

Erstellt von larabad vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.435 Views
Thema geschlossen
L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren
sql insert will nicht.

verwendetes Datenbanksystem: local sql (mdf)

Hallo ihr lieben.
ich habe ein kleines Problem=(
mein sql insert in der windows forms application will nicht =(
könnt ihr mir helfen ??? hier ist der code snippet...


SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True");
			
			string neues_Template = "sonstiges";
			//neues_Template = textBox_add.Text;
			string sql_insert;
			sql_insert = "INSERT INTO [testtabelle] (name)VALUES('sonstiges2')";
			SqlCommand command = new SqlCommand(sql_insert, cn);
			//command.CommandText = sql_insert;
			cn.Open();

			cn.Close();

hoffendlich könnt ihr mir helfen...

liebe grüße larabad

3.170 Beiträge seit 2006
vor 13 Jahren

Hallo,

  1. was bedeutet "will nicht" ?
  2. Ich sehe in Deinem Code keine Stelle, an der Du das SqlCommand überhaupt ausführst...

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

458 Beiträge seit 2007
vor 13 Jahren

Was "will denn nicht"?
Die genaue Exception waere schonmal toll.

be the hammer, not the nail!

L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren

sry bin neuling .. =(

das steht bei mir nu in der click methode drinn

der soll halt ein neuen eintrag machen ...

ich hab schon viel geooglet nichts gefunne

Gelöschter Account
vor 13 Jahren

Wie bereits erwähnt, führst du das Command nicht aus. daher passiert auch nichts.

Beachte bitte unbedingt [Hinweis] Wie poste ich richtig? punkt 1

H
31 Beiträge seit 2010
vor 13 Jahren

Hallo larabad,

bei dir fehlt einfach ein command.ExecuteNonQuery();

Bsp.:

verwendetes Datenbanksystem: local sql (mdf)

  
SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True");  
  		  
  		string neues_Template = "sonstiges";  
  		//neues_Template = textBox_add.Text;  
  		string sql_insert;  
  		sql_insert = "INSERT INTO [testtabelle] (name)VALUES('sonstiges2')";  
  		SqlCommand command = new SqlCommand(sql_insert, cn);  
  		//command.CommandText = sql_insert;  
  		cn.Open();  
                        command.ExecuteNonQuery();  
  		cn.Close();  
  

hoffendlich könnt ihr mir helfen...

liebe grüße larabad

Sieht dir einfach mal die SqlCommand Klasse an und welche Methoden es da gibt.

Viele Grüße

Hotte

3.170 Beiträge seit 2006
vor 13 Jahren

Hallo,

sry bin neuling .. =(

Dennoch solltest Du - wie schon erwähnt - [Hinweis] Wie poste ich richtig? Punkt 1.1 und 1.1.1 beachten.

Für den Anfang kann ich auch [FAQ] Wie finde ich den Einstieg in C#? empfehlen.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren

oh leute danke schööön =)

tut mir echt leid aber ich hab grad erst mit der ausbildung angefangen un brauchte das 😄 sry 😉 danke nochmals 😉

L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren

die neuen datensätzen werden aber immer noch nciht angezeigt =(

H
31 Beiträge seit 2010
vor 13 Jahren

Hallo larabad,

du musst schon etwas genauer werden.
Was liefert denn ExecuteNonQuery zurück? Wo sollen die Datensätze angezeigt werden? Usw....

Viele Grüße

Hotte

L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren

die sollen einfach als nächsten eintrag in die tabelle eingefügt werden.

den auto id setzt er doch von allein oder ?

1.552 Beiträge seit 2010
vor 13 Jahren

Hallo larabad,

ja, autoid wird falls es ein identity element ist selbst gesetzt und kann nicht gesetzt werden.
Du solltest auf die Fragen die deine Vorposter gestellt haben eine Antwort geben.

Was liefert denn ExecuteNonQuery zurück?

Hast du eigentlich einen try, catch Block um diesen geposteten Code, was ist die Fehlermedlung die geworfen wird.

Wenn du etwas genauere Angaben machen würdest, dann könnten wir dir auch sehr viel besser helfen.

Gruß
Michael

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp

L
larabad Themenstarter:in
6 Beiträge seit 2010
vor 13 Jahren

hi, wo kann ich denn herauslesen was diese funktion mir zurück gibt ??

also brauch ich wirklich nur aus der tabelle name einzusetzten

den die tabelle besteht aus id und name,

id hat den typ int und wird automatisch erhöht...

der try and catch block hab ich kurze zeit wieder rausgenommen der wird aber komischerweise immer true anzeigen 😦

aber was auch komisch ist :



private void Form1_Load(object sender, EventArgs e)
		{
			// TODO: Diese Codezeile lädt Daten in die Tabelle "databaseDataSet.testtabelle". Sie können sie bei Bedarf verschieben oder entfernen.
			//ColorTranslator.FromHtml()
			// TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.templates". Sie können sie bei Bedarf verschieben oder entfernen.

			SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True");
			//string neues_Template = textBox_add.Text;
			//neues_Template = textBox_add.Text;
			string sql_insert;
			sql_insert = "INSERT INTO testtabelle (name)VALUES('larabad2asd')";

			SqlCommand command = new SqlCommand(sql_insert, cn);
			
			//command.CommandText = sql_insert;
			cn.Open();
			command.Parameters.Add("name", "larabad18");
			
			command.ExecuteNonQuery();
			command.ExecuteScalar();
			cn.Close();
			
			this.testtabelleTableAdapter.Fill(this.databaseDataSet.testtabelle);
		}

letzte zeile wo this steht, füllt eine combobox mit den einträgen .. auch der neue eintrag is dabei aber wenn ich danndas prog schließe, dann ist es weder in der tabelle noch in der combobox drinn

Gruß

Hinweis vor 13 Jahren

Sry aber ohne, das du irgendwelche Grundlagen mitbringst, ist es kaum bis garnicht möglich zu helfen.

Bitte beachte [Hinweis] Wie poste ich richtig? Punkt 1

speziell geht es um solche Aussagen:

der try and catch block hab ich kurze zeit wieder rausgenommen der wird aber komischerweise immer true anzeigen

und

aber wenn ich danndas prog schließe, dann ist es weder in der tabelle noch in der combobox drinn

Diese ergeben selbst in den Kontext bezogen überhaupt keinen Sinn.

Alles was es zum Thema zu sagen gibt, wurde bereits gesagt (incl. des fertigen Codes!).

3.430 Beiträge seit 2007
vor 13 Jahren

Hallo larabad,

Mit einem "geht nicht" können wir nicht viel anfangen

wo kann ich denn herauslesen was diese funktion mir zurück gibt ??

Mit dem Rückgabewert. Eine Zahl die angibt wie viele Zeilen betroffen wurden

der try and catch block hab ich kurze zeit wieder rausgenommen der wird aber komischerweise immer true anzeigen 😦

Ein TryCatch Block zeigt nicht true oder falsch an.
Im Try werden Exceptions abgefangen und im Catch kannst du darauf reagieren.

Bitte beachte: [Hinweis] Wie poste ich richtig? Punkt 1.1 1.1.1 5 und 8

Lies dir mal alles durch was in diesem Thread vorgeschlagen wurde und mache dich mit den Grundlagen vertraut.

Mit konkreten Fragen darfst du natürlich weiterhin ankommen 😃

Gruss
Michael

Thema geschlossen