php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > BRAINSTORMING PHP/SQL/HTML/JS/CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


BRAINSTORMING PHP/SQL/HTML/JS/CSS Ihr habt eine Idee, aber keinen genauen Ansatz? Diskutiert mit anderen Usern des Forums über eure Gedankengänge um evtl. hilfreiche Ideen zu bekommen!
Normale Fragen bitte weiterhin in die entsprechenden Foren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 03-09-2003, 22:52
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard MySQL: enum oder char?

Ich will in MySQL einen Binary-Datentyp verwenden, die Feldinhalte sollen also die Werte "0" und "1" annehmen können. Ich habe dabei verschiedene Empfehlungen gelesen. Danach könnte ich entweder

id ENUM('0','1') NOT NULL

oder

id CHAR(1) [BINARY] NOT NULL

verwenden.
Im MySQL-Referenz-Handbuch schlagen sie CHAR vor, das würde wohl Falscheingaben nicht verhindern und würde ein Byte beanspruchen. Falscheingaben könnte man aber suchen.

Unter folgendem Link
( ganz unten auf der Seite) schlagen Sie ENUM vor. Würde wohl auch ein Byte beanspruchen. Könnte theoretisch Falscheingaben verhindern, wenn der Fehlerwert (bei Falschenigabe) nicht eine leere Zeichenkette mit dem numerischen Wert 0 wäre...man kann - soweit ich das verstehe - die Falscheingabe auch nicht aufspüren. Nach was sollte man schliesslich suchen - nach "0" suchen bringt kene sinnvollen Ergebnisse.

Einen richtigen Bit-Operator stellt MySQL anscheinend nicht zur Verfügung. Welcher der oben genannten Datentypen ist in meinem Fall vorzuziehen? Oder sollte allgemein man j/n o.ä. verwenden?
Mit Zitat antworten
  #2 (permalink)  
Alt 03-09-2003, 23:22
Abraxax
  THE REAL HAXE (Administrator)
Links : Onlinestatus : Abraxax ist offline
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.623
Abraxax befindet sich auf einem aufstrebenden Ast
Standard

ich mache es i.d.r. mit ENUM('Y','N')

aber, welche lösung die beste ich kann ich auch nicht sagen. ich lasse mich da gerne belehren.

ich schiebe das auch mal lieber zum brainstorming

*VERSCHIEB*
__________________
INFO: Erst suchen, dann posten! | MANUAL(s): PHP | MySQL | HTML/JS/CSS | NICE: GNOME Do | TESTS: Gästebuch | IM: Jabber.org |


Mit Zitat antworten
  #3 (permalink)  
Alt 03-09-2003, 23:48
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

ENUM(true,false,NULL)

default NULL

so würd ich's machen (behaupte ich einfach mal )
wenn es so geht, könntest du nach true (=1) und false (=0) suchen und bei ner falscheingabe stünde einfach NULL drin wonach du auch suchen kannst

ich weiß nämlich nicht ob es schneller is falscheingaben so aufzuspüren:
Code:
SELECT id
FROM tabelle
WHERE binaer IS NULL
oder so
Code:
SELECT id
FROM tabelle
WHERE binaer NOT IN ('1', '2')
, vermute aber mal, dass ersteres evtl. schneller ist

und falscheingaben willst du ja finden können oder soll da einfach ne 0 eingetragen werden?

EDIT:
alternative:
binaer CHAR(0)

aber frag mich nicht, ob das vorteile hinsichtlich speicherbedarf hat

__________________
Ich denke, also bin ich. - Einige sind trotzdem...

Geändert von mrhappiness (03-09-2003 um 23:54 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 03-09-2003, 23:50
goth
  Moderator
Links : Onlinestatus : goth ist offline
Registriert seit: Mar 2002
Ort: Erde
Beiträge: 7.279
goth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich persönlich würde einen ENUM() Typen bevorzugen. Die Daten werden wie beschrieben in einem Byte gespeichert ... ein "echter" Bit-Type ist wohl für spätere Versionen geplant.

ENUM() schließt, wie auch bereits beschrieben, Fehleingaben weitestgehend aus. Ob Du jetzt '0','1'; 'Y','N'; 'Yes','No' oder 'Ja','Nein' verwendest ist wurscht, nur würde ich möglichst "sprechende" Werte verwenden, aber '0' und '1' können natürlich auch sinnvoll sein.
__________________
carpe noctem

Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht!
Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung!
Mit Zitat antworten
  #5 (permalink)  
Alt 04-09-2003, 07:54
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was hat es im Forum eigentlich mit editiertem Text auf sich??? Bin noch net der eingefleischte Foren-Besucher (auch wenn ich in letzter Zeit sehr häufig poste).

Nach NULL zu suchen ist mir gar nicht eingefallen. Mit diesem neu errungenen Wissen halte ich

Code:
ENUM(true,false,NULL) default NULL
wahrhaft für die beste Lösung.

Code:
binaer CHAR(0)
Wie soll das gehn, das wären doch 0 Byte...

Naja, ich denk ich hab die Antwort die ich wollte, danke.
Mit Zitat antworten
  #6 (permalink)  
Alt 04-09-2003, 09:26
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

editierter text ist das was du bekommst wenn du im formular zum beitrag verfassen auf den EDIT-button klickst

binaer CHAR(0) kann entweder ein leerer string sein (==1) oder NULL (==0) ist evtl. die speichersparendste variante, aber sicher bin ich mir nicht (und falsche einträge kannst du nicht mehr identifizieren

SELECT * FROM tabelle WHERE binaer='' liefert alle 1er

SELECT * FROM tabelle WHERE binaer IS NULL liefert alle 0er
EDIT:
da isses wieder *g*

aber die variante mit enum ist finde ich intuitiver

__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #7 (permalink)  
Alt 04-09-2003, 09:54
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Den Edit-Button kannte ich schon. Aber zu welchem Zweck wird editierter Text verwendet? Das wurde mir immer noch nicht klar...ist ja kein Zitat oder Quelltext.

Code:
SELECT * FROM tabelle WHERE binaer=''
Hat das "binaer" ne Sonderfunktion oder ist das die Spaltenbezeichnung? Ich frag nur weil im Thread eigentölich die Spaltenbezeichnung "id" verwendet wurde.

Geändert von Stephan666 (04-09-2003 um 09:57 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 04-09-2003, 09:59
Abraxax
  THE REAL HAXE (Administrator)
Links : Onlinestatus : Abraxax ist offline
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.623
Abraxax befindet sich auf einem aufstrebenden Ast
Standard

OffTopic:
Zitat:
Original geschrieben von Stephan666
Den Edit-Button kannte ich schon. Aber zu welchem Zweck wird editierter Text verwendet?
damit kannst du markieren, was du später geändert hast.

das ist ganz gut, damit leser, die gerade was gepostet haben, zu zeigen, dass da was neues ist. durch das rot wird es besonders hervorgehoben.
__________________
INFO: Erst suchen, dann posten! | MANUAL(s): PHP | MySQL | HTML/JS/CSS | NICE: GNOME Do | TESTS: Gästebuch | IM: Jabber.org |


Mit Zitat antworten
  #9 (permalink)  
Alt 04-09-2003, 10:34
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ah - jetzt....ja!
Mit Zitat antworten
  #10 (permalink)  
Alt 04-09-2003, 10:37
Abraxax
  THE REAL HAXE (Administrator)
Links : Onlinestatus : Abraxax ist offline
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.623
Abraxax befindet sich auf einem aufstrebenden Ast
Standard

OffTopic:
Zitat:
Original geschrieben von Stephan666
Ah - jetzt....ja!
..... eeeeiiine insel mit ....
__________________
INFO: Erst suchen, dann posten! | MANUAL(s): PHP | MySQL | HTML/JS/CSS | NICE: GNOME Do | TESTS: Gästebuch | IM: Jabber.org |


Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Projektmanagement Damals und Heute
Projektmanagement Damals und HeuteWerfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.

18.01.2021 | Berni

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni


 

Aktuelle PHP Scripte

Formmailer Bootstrap 4

Mit dem Formmailer kann man sich eMails über seine Seite zukommen lassen.

08.07.2021 arne-home | Kategorie: PHP/ Formular
Fehlerseite Bootstrap 4

Bei Aufruf einer nicht existierenden Seite, teilen Sie Besuchern mit einer eigenen Fehlerseite mit, dass die gewünschte Seite nicht gefunden wurde. Die eigene Fehlerseite sollte dasselbe Design wie die Website haben. Zudem sollte ein Link zur Startseite a

04.07.2021 arne-home | Kategorie: PHP/ Counter
Upload Bootstrap 4

Mit dem PHP - Uploadscript kann man schnell und einfach Bilder und Dateien auf den Webserver hochladen.

04.07.2021 arne-home | Kategorie: PHP/ File
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:29 Uhr.