Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Feldgröße Abfrage Access

Mitglied: AMStyles

AMStyles (Level 1) - Jetzt verbinden

23.04.2012 um 11:50 Uhr, 7612 Aufrufe, 6 Kommentare

Guten Tag,

ich möchte via SQL eine Abfrage erstellen, die mir die Feld Länge einer Spalte zurückgibt.
Auf einem SQL Server funktioniert das so

01.
SELECT CHARACTER_MAXIMUM_LENGTH FROM information_schema.columns where TABLE_NAME = 'TabellenName' AND COLUMN_NAME ='SpaltenName'
Wie kann ich dasselbe Ergebnis bei einer Access Datei erziehen?

Grüße,
AMStyles
Mitglied: mak-xxl
24.04.2012 um 08:18 Uhr
Moin AMStyles,

ich postuliere mal, dass Du den Zugriff per internem Access-VBA meinst, wenn, dann innerhalb eines Recordsets mit:

... 
retVal = Len(strField) 
...
In Zeiten von UTF8/16 ist es aber besser, die Bytegröße eines Feldes abzufragen:

... 
Set db = DBEngine(0)(0) 
Set td = db.TableDefs(strTable) 
Set fd = td.Fields(strField) 
retVal = fd.FieldSize [.Size] 
...
Falls es von außerhalb auf eine Access-DB sein soll (i.e. per VB):

... 
Set DB = DBEngine.OpenDataBase(strDBName), False, False) 
retVal = DB.TableDefs(strTable).Fields(strField).Size 
...
Freundliche Grüße von der Insel - Mario
Bitte warten ..
Mitglied: AMStyles
24.04.2012 um 08:55 Uhr
Hallo mak-xxl ,

vielen Dank für deine Antwort.
Ich habe leider nur über SQL Zugriff auf diese Datei, so interne Sachen wie VBA o. ä. sind leider nicht möglich.

Grüße,
AMStyles
Bitte warten ..
Mitglied: mak-xxl
24.04.2012 um 09:12 Uhr
Moin AMStyles,

Zitat von AMStyles:
... Ich habe leider nur über SQL Zugriff auf diese Datei ...

Und Code dazu hast Du doch bereits notiert ...

Da ich aber oben schon raten musste - was möchtest Du eigentlich wissen?

Wie man extern auf eine Access-DB zugreift (ohne SQL, aber mit VB), ist oben skizziert - und gibt die Länge eines Feldes zurück. Das Ganze geht auch aus Office-VBA heraus etc. pp. Und nur(?) SQL - irgendwas anderes geht immer ...

PS: Falls noch ein anderes SQL-Statement als Anregung dienen soll:
SELECT Max(Len(strFieldName)) FROM strTableName
Freundliche Grüße von der Insel - Mario
Bitte warten ..
Mitglied: Biber
24.04.2012 um 09:29 Uhr
Moin AMStyles,

ergänzend zu mak-xxls SELECT-Ansatz noch der Hinweis auf die (evtl abweichende) Byte-Länge
01.
SELECT Max(Len([deinFeldName)) AS Maxlen, Max(LenB([deinFeldName])) as MaxLenB 
02.
FROM [deineTabelle];
Wobei ich nicht abschätzen kann, ob du die "Feldlänge" eher zum Grid-auf-den-Schirm-malen brauchst oder für eine Import/Exportschnittstelle.

Zum Malen reicht natürlich der Stringlängenwert der Len()-Funktion.

Grüße
Biber
Bitte warten ..
Mitglied: AMStyles
24.04.2012 um 11:29 Uhr
Hi Bibel,

man kann unter Access beispielsweise bei einem Text die Feldgröße angeben.
Diese möchte ich via SQL Skript auslesen.

Also ich möchte NICHT wissen dass der Inhalt des Datenfelds eine Textlänge von x Zeichen hat, sondern die allgemeine Feldgröße der Spalte.

Grüße,
AMStyles
Bitte warten ..
Mitglied: Biber
25.04.2012 um 10:32 Uhr
Moin AMStyles,

deinen Wunsch haben mak-xxl und ich schon verstanden.
Wir wollten es dir nur schonend beibringen.

Also, mal ganz ungeschminkt:

MS-Access hat und hatte in keiner Version Metadaten/Katologdaten, die
a) als Bonus-Giveaway für den zahlenden Kunden mit ausgeliefert wurden
b) via SQL abgefragt werden können. Wozu auch? SQL verwenden eigentlich nur Datenbanken...
c) und dokumentiert sind die MSysObject-Tabellen von den PraktikantInnen selbst schon gar nicht.

Speziell eine Tabelle, die vom Sinn her einer information_schema.columns oder einer sys.user_tab_columns oder einer syscat.syscolumns-Tabelle bei richtigen Datenbanken entspricht, gibt es bei MSAccess nicht.

Daher: keine Abfrage der Feldlänge eines String-Feldes per Jet-SQL oder ACE möglich.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Access Abfrage Sotieren
Frage von charmeurMicrosoft Office2 Kommentare

Hallo Ihr da ich blutiger nichts wisser in Access bin wende ich mich an euch ich möchte so eine ...

Microsoft Office
ACCESS - Problem - Bericht - Abfrage
Frage von caschoplMicrosoft Office6 Kommentare

Hallo, ich möchte eine kleine Datenbank für unsere Handy und Mobilverträge erstellen, damit wir diese einfach besser Verwalten können. ...

Batch & Shell
Powershell Access Abfrage auslesen?
gelöst Frage von Druide83Batch & Shell2 Kommentare

Hallo, langsam bin ich am verzweifeln. Ich versuche Werte aus einer Access-Abfrage auszulesen. Selbe Methode funktioniert einwandfrei wenn ich ...

Microsoft Office
Access Problem bei Abfrage mit Datum
gelöst Frage von Luna01Microsoft Office3 Kommentare

Guten morgen, erst mal vielen Dank, ich habe hier schon viel nützliche Hilfe bekommen. ich habe eine Abfrage in ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 2 TagenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 3 TagenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 3 TagenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 4 TagenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Netzwerkmanagment im Haus mit Switch, Panel und pfsense
gelöst Frage von CorraggiounoNetzwerkmanagement19 Kommentare

hi zusammen, wir sind gerade dabei das ganze Haus bzw. die einzelnen Zimmer mit netzwerkdosen zu versorgen. Vom Keller ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server11 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...

Router & Routing
VPN hinter zweiter Fritzbox nutzen im Nachbarhaus
gelöst Frage von georg2204Router & Routing11 Kommentare

Hallo zusammen, ich blicke hier leider nicht mehr so ganz durch. In Haus 1 steht eine Fritzbox 7390, diese ...