Laden...

Problem beim erstellen einer Tabelle über c#

Erstellt von Remling vor 10 Jahren Letzter Beitrag vor 10 Jahren 1.624 Views
R
Remling Themenstarter:in
48 Beiträge seit 2013
vor 10 Jahren
Problem beim erstellen einer Tabelle über c#

verwendetes Datenbanksystem: Access

Hey,
ich habe ein kleines Problem und zwar:
Ich möchte über einen c# code eine Tabelle in einer bereits existierenden access tabelle anlegen. ich habe es mit Folgendem Code versucht:

                OleDbCommand newtablecommand = new OleDbCommand("CREATE TABLE " + textBox1.Text + "(ChatPartner VARCHAR(100),Nachricht VARCHAR(1000)", conChat);
                newtablecommand.ExecuteNonQuery();

Der connection string ist richtig daran liegt es nicht

kann mir wer helfen?
lg Remling;

edit: die Textbox1 sollte hierbei für den namen der tabelle stehen;

WHAT DOES THE FOX SAYS

F
10.010 Beiträge seit 2004
vor 10 Jahren

Parameter gehen nicht bei DDL.

R
212 Beiträge seit 2012
vor 10 Jahren

Versuchs mal damit:


new OleDbCommand("CREATE TABLE [dbo.][" + textBox1.Text + "] ([ID] INT NOT  NULL AUTO_INCREMENT, [ChatPartner] NVARCHAR (100) NOT NULL,  [Nachricht] NVARCHAR(1000), CONSTRAINT [" + textBox1.Tex + "_PK] PRIMARY KEY CLUSTERED ([ID] ASC))", conChat).ExecuteNonQuery();

T
314 Beiträge seit 2013
vor 10 Jahren

Auf jeden Fall fehlt die schließende Klammer für die Tabellendefinition.

1.696 Beiträge seit 2006
vor 10 Jahren

Hallo,

schau doch mal nach welche Exception geworfen wird, es fehlt eine schließende Klammer ).

Grüße

Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.

**:::

R
Remling Themenstarter:in
48 Beiträge seit 2013
vor 10 Jahren

so habs jetzt gelöst,
der fehler war anscheinend das char nur bis 255 geht ( jedenfalls funktionierts dann)
lg Remling

WHAT DOES THE FOX SAYS

S
93 Beiträge seit 2008
vor 10 Jahren

Stimmt, Textfelder in Access können nur maximal 255 Zeichen groß sein.
Wenn Du in Access größere Textfelder benötigst, dann mußt Du Memo-Felder verwenden