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

VB6 SQL Umgang mit Feld Postleitzahl als Integer - keine führende 0 möglich

Frage Entwicklung VB for Applications

Mitglied: boesi666

boesi666 (Level 1) - Jetzt verbinden

10.06.2012 um 17:50 Uhr, 4017 Aufrufe, 8 Kommentare

sql und die postleitzahlen ...

spreche unter vb6 mittels sql befehlen eine access db an unf habe hier schon lange eine spalte PLZ als Typ Integer in der Datenbank. Ursprünglich habe ich das posleitzhalen feld als integer erstellt, da ich auch mal auswertungen machen wollte wo der postleitzahlenbereich hätte zwischen einem Bereich X und Y hätte sein können und das als Typ integer echt klasse war.

Nun aber schon lange das vernachlässigte Problem, dass wenn mal eine Postleitzhal beim anlegen mit einer 0 anfängt, diese dann nicht so gespeichert wird, da der datenbank feld typ ja integer und nicht string ist.

wie geht ihr mit so einem feld um? legt ihr das immer als string an?, wenn ja:
-wie macht man dann solche sql abfragen mit select blabla where postleitzahl > XXXX and Postleitzahl < YYYYY ??
-kann man solch eine spalte wo schon werte drin sind nachträglich ändern/umwandeln?
Mitglied: wiesi200
10.06.2012 um 18:43 Uhr
Hallo,
Im großen und ganzen ja das ist ein string
Bitte warten ..
Mitglied: rubberman
10.06.2012 um 18:50 Uhr
Hallo boesi666.

Ich verstehe das Problem nicht. Wenn du die PLZ als Integer ablegst, fehlen logischerweise führende Nullen. Welches Problem hast du damit? Entsprechende Abfragen dann eben auch als Integerwert. Und falls du mal für eine Ausgabe (damit es schöner aussieht) die Nullen brauchst hängst du sie (nach Konvertierung/Casting zum String) wieder davor. So what?

Grüße
rubberman
Bitte warten ..
Mitglied: wiesi200
10.06.2012 um 19:14 Uhr
Das Problem ist wenn man's als Integer macht sind Ausländische Codes. Auch wenn's im Moment vielleicht nicht gebraucht wird. Wer kennt die Zukunft? Mann würde sich hier die Erweiterungsmöglichkeiten nehmen.
Bitte warten ..
Mitglied: boesi666
10.06.2012 um 19:43 Uhr
Zitat von rubberman:
... Welches Problem
hast du damit? Entsprechende Abfragen dann eben auch als Integerwert. Und falls du mal für eine Ausgabe (damit es
schöner aussieht) die Nullen brauchst hängst du sie (nach Konvertierung/Casting zum String) wieder davor. So what?

Grüße
rubberman

ja problem ist ja genau wenn ich dann die plz mal wieder zur anzeige auf rechnung, etc. brauche, dann solche städte wo die plz mit 0 beginnt dann ja nicht korrekt ausgegeben werden.

statt 01234 würde dann fälschlicherweise 1234 nur ausgegeben werden.

kann man das im select befehl bei einer sql abfrage mit so nem iif befehl automatisch mit auffüllen lassen? wenn z.b. die plz nur 4 ziffern hat oder kleiner 10000 ist ?
Bitte warten ..
Mitglied: boesi666
10.06.2012 um 19:46 Uhr
Zitat von wiesi200:
Das Problem ist wenn man's als Integer macht sind Ausländische Codes. Auch wenn's im Moment vielleicht nicht
gebraucht wird. Wer kennt die Zukunft? Mann würde sich hier die Erweiterungsmöglichkeiten nehmen.

ob das hierbei ginge mit einem einzigen sql befehl das plz feld von integer ins beispielsweise string(20) umzuverw3andeln OHNE die bestehenenden einträge zu gefährden?

z.B. so :
ALTER table Kunden ALTER COLUMN plz Text(20)
Bitte warten ..
Mitglied: rubberman
10.06.2012 um 20:29 Uhr
Hallo boesi666.

Da du das in einer Access Datenbank tun willst, kannst du es per Hand an einer neuen Datenbanktabelle durchkauen. Natürlich kannst du das Format der Spalte ändern (einfach in die Entwurfsansicht gehen und probieren). Das bringt dir aber im Zweifelsfall nichts für die bereits vorhandenen Daten. Immerhin fehlt da die vorangestellte Null im Wert und die wird auch nicht wie durch Zauberhand wieder erscheinen.

Grüße
rubberman
Bitte warten ..
Mitglied: rubberman
10.06.2012 um 20:35 Uhr
Hallo boesi666,

entweder im SQL Statement selbst (zB.: addiere 100000, caste zum String, verwende die rechten 5 Stellen), oder in deinem VB Code.

Grüße
rubberman
Bitte warten ..
Mitglied: dog
10.06.2012, aktualisiert um 21:03 Uhr
Also mir fällt keine sinnvolle Verwendung von plz > X and plz < Y ein.
PLZs sind ja regional untergliedert:
3xxxx Mitteldeutschland
34xxxx Großraum Kassel
usw.

Also wäre eine Sinnvolle Abfrage nach PLZ um z.B. Leute aus einer Region zu finden plz LIKE '34%'.

Natürlich kann man sich damit auch prima in den Fuß schießen (genauso wie bei Zahlen auch), da z.B. 37xxx und 99xxx direkt aneinander liegen was aus der Zahl nicht ersichtlich ist.
Wenn du also Abfragen nach Region machen willst brauchst du viel eher Geo-Daten.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SQL . 2 Felder bzw. Werte vergleichen und Rückmeldung 0 oder 1
gelöst Frage von wawidlDatenbanken2 Kommentare

Hallo, ich habe 2 SQL-Tabellen, in beiden Tabellen stehen eindeutige ID's in Spalte A. Ich möchte nun 2 Werte ...

Microsoft Office
Sortieren von Postleitzahlen
Frage von bob1986Microsoft Office8 Kommentare

Hallo Allemal, kann mir jemand helfen mit dem folgenden ich verstehe nicht so viel von dem VBA Programierung aber ...

Datenbanken
SQL-Abfrage und leere Felder vermeiden
gelöst Frage von zwangseinweisungDatenbanken12 Kommentare

Hallo, ich mache grade eine Ausbildung zum Fi-Si und vor dem Weihnachtsurlaub haben wir im Fach Datenbanken noch eine ...

Batch & Shell
Führende Nullen hinzufügen
gelöst Frage von Erik72Batch & Shell6 Kommentare

Hallo ihr Lieben, ich habe folgendes Script und wünsche führende Nullen bei der Ausgabe. Kann mir bitte jemand helfen? ...

Neue Wissensbeiträge
Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 4 StundenInternet3 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registierunf von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 11 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 22 StundenWindows 103 Kommentare

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 1 TagSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement16 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless16 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...