Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Frank77 am Mai 28, 2012, 21:55:00

Titel: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: Frank77 am Mai 28, 2012, 21:55:00
Hallo!
Ich würde gerne wissen ob er eine Möglichkeit gibt heraus zu finden welcher Datensatz in einer Tabellenspalte die meisten Zeichen enthält
Gruß frank
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: bahasu am Mai 28, 2012, 22:16:59
N'abend,

denkbar mit Abfrage:
SELECT TOP 1 Tabelle1.a, Max(Len([A])) AS L, Tabelle1.id
FROM Tabelle1
GROUP BY Tabelle1.a, Tabelle1.id
ORDER BY Max(Len([A])) DESC;

Siehe Anhang

Harald

[Anhang gelöscht durch Administrator]
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: oma am Mai 28, 2012, 22:38:32
Hallo,

wenn du den Datensatz mit den meisten Zeichen haben willst, musst du in allen Feldern die Länge der Felder ermitteln u. diese addieren.

@Harald: ich denke TOP1 und Absteigend sortieren ist etwas zu viel des Guten :-)

Gruß Oma
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: Frank77 am Mai 29, 2012, 19:34:25
Hallo!

Danke für eure Hilfe hab das so in ein Abfrage geschrieben  das reicht mir eigentlich  schon
SELECT TOP 1 Max(Len([AnsprechpartnerName])) AS L FROM TblAnsprechpartner;
Ich habe mich bis jetzt viel mit der Entwicklung und der Programmierung meiner DB beschäftigt und das angeben von feldlängen in den Tabellen vergessen
Da ich jetzt schon eine Menge Daten in der Tabellen habe fällt mir das angeben der Feldgrößen leichter wenn ich sie auf diese Weise auslese
Man darf beim Ändern nur die Größe  der vorhandenen maximalen länge nicht unterschreiten da es  sonst sein kann das der ein oder andere Feldinhalt futsch ist
wenn ich da richtig liege

Da hätte ich noch eine Frage zu den Feldgrößen der Felder in den Formularen wen es ein gebundenes Formular ist erledigt sich das ja von allein das die Zeichenlänge nicht überschritten werden kann
Aber was mache ich bei ungebundenen Feldern wie kann ich da die  maximale Zeichen länge bestimmen

Gruß Frank
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: oma am Mai 29, 2012, 20:08:22
Hallo Frank,

wozu willst du denn überhaupt die Feldlängen wissen ????

Gruß Oma
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: Frank77 am Mai 29, 2012, 20:27:59
Hallo! Oma

Wenn ich in einem Textfeld zum zB  TblAnrede  ein Textfeld anlege hat das 255 Zeichen
ich habe aber nur Herr / Frau eingetragen dann kann man  die Feldgröße ja auf 4 Zeichen beschränken 
Wie ich in Access Büchern gelesen hab sollen wenn man das in allen Tabellen macht den reservierte Speicher in der DB verkleinern  und somit die gesamt Größe reduzieren

Gruß Frank
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: oma am Mai 29, 2012, 20:38:44
Hallo Frank,

ZitatWie ich in Access Büchern gelesen hab sollen wenn man das in allen Tabellen macht den reservierte Speicher in der DB verkleinern  und somit die gesamt Größe reduzieren

Das ist nich korrekt. Du kannst immer 255 Zeichen einstellen. Für Daten in einem Textfeld reserviert Access nur den zum Speichern der tatsächlichen Werte erforderlichen Speicherplatz. Die Eigenschaft Feldgröße stellt die maximale Feldwertgröße dar.

Gruß Oma
Titel: Re: Meiste Zeichen in einem Tabellen Spalte / Feld
Beitrag von: MzKlMu am Mai 29, 2012, 20:39:35
Hallo,
ZitatWie ich in Access Büchern gelesen hab sollen wenn man das in allen Tabellen macht den reservierte Speicher in der DB verkleinern  und somit die gesamt Größe reduzieren.
Das ist Geschichte oder falsch in den Büchern, schmeiß die Bücher weg  ;D ;D, Access verwaltet den Speicherplatz dynamisch.
Speicherbedarf für ein Textfeld (String) 10 Byte +1 Byte je eingegebenem Zeichen. Es ist also völlig wurscht ob da 4 oder 255 drin steht.
Für Frau werden also 10 Byte + 4 Byte=14 Byte benötigt, auch wenn 255 eingestellt ist.

Speicherbedarf für Accessfelder:
Text........10 Byte + 1 Byte je Zeichen
Byte.........1 Byte
Integer......2 Byte
Long.........4 Byte
Single.......4 Byte
Double.......8 Byte
Currency.....8 Byte wie Double
AutoWert.....4 Byte wie Long
Ja/Nein......1 bit
OLE-Objekt...1 Gbyte (max)
Date.........8 Byte wie Double
Variant.....16 Byte (mit Zahlen)
Variant.....22 Byte plus Zeichenlänge (mit Zeichen)