Veröffentlicht 18. Dezember 200519 j Hallo, folgendes Problem. Ich sende per VC6.0 SQL Statements zum erstellen eines *.mdb Files und Tabellen ect. Jetzt habe ich folgenden seltsamen Effekt: Die erstellten Textfelder in den Tabellen verhalten sich nicht so wie als wenn ich die Tabellenfelder "zu Fuß" über die Benutzeroberfläche unter Access erstelle. Ich bin es gewohnt wenn ich ein Textfeld mit einem Wert fülle , dann steht nur der Wert den ich gesetzt habe in dem Feld und direkt dahinter ist der String terminiert. Wenn ich aber die Tabellen über die Funktion Create bilde und mit einem String belege, so wird der String nicht terminiert sondern je nachdem wie groß ich das Textfeld angelegt habe mit Leerstellen gefüllt. Soweit ich sagen kann ist es kein Effekt der beim Wertzuweisen über VC6.0 auftritt. Wenn ich die GUI von Access benutze um das mit create gebildete File mit Werten zu belegen hab ich den selben Sch..ß. Es muß also beim erstellen mit dem Create Befehl liegen: m_strSql="CREATE TABLE Kunde ([iD] counter,"; m_strSql+="[Vorname] char (50),"; m_strSql+="[Nachname] char (50),"; m_strSql+="[strasse_Nr] char (100),"; m_strSql+="[PLZ] char (50),"; m_strSql+="[Ort] char (50),"; m_strSql+="constraint prim_s_mit primary key(ID))"; m_database.Execute(m_strSql); Vielleicht die DAO Version ? keine Ahnung, habe auf jeden Fall keinen Nerv die Texte nach dem auslesen aus der Datenbank nochmals zu bearbeiten.
19. Dezember 200519 j Ich glaube das liegt an dem Datentyp char. Wenn ich mich recht erinnere wird das Feld dann mit Leerzeichen aufgefüllt. Versuch statt char mal varchar, dann sollte der Effekt eigentlich nicht mehr auftreten
19. Dezember 200519 j Super funtioniert mit varchar. Weißt Du wo ich weitere infos speziell über Access 97 und SQL Statements herbekomme, wenns geht in deutsch ?Mein Material beschäftigt sich mehr mit der GUI von '97 Danke nochmal Joerg
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.