| Autor |
Beitrag |
rolandt4088
      
Beiträge: 122
WINDOWS XP
Delphi 7, CodeGear RAD Studio
|
Verfasst: So 09.09.07 00:17
Hallo
Ich möchte gerne den Typ Bool in meiner MY-SQL-Tabelle benutzen.
Es funktioniert aber nicht.
Gibt es eine andere Lösung als den Typ Integer mit 1 und 0 zu benutzen?
Gruß
Roland
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: So 09.09.07 15:34
rolandt4088 hat folgendes geschrieben: |
Es funktioniert aber nicht.
Gibt es eine andere Lösung als den Typ Integer mit 1 und 0 zu benutzen? |
Ja, Bool verwenden. Warum funktioniert es denn nicht?
|
|
Arne K.
      

Beiträge: 112
C# (VS 2008 Professional)
|
Verfasst: So 09.09.07 15:43
In MySQL ist BOOL ein Alias für TINYINT(1).
|
|
rolandt4088 
      
Beiträge: 122
WINDOWS XP
Delphi 7, CodeGear RAD Studio
|
Verfasst: So 09.09.07 17:44
Den Typ Bool setzen ist nicht das problem.
Das Problem ist, dass auf dieses Feld vom Typ Bool nicht zugeriffen werden kann.
Mit Access-, Paradox- Tabellen mit einem Feld vom Typ Boolean ist das kein Problem.
Gruß Roland
|
|
Arne K.
      

Beiträge: 112
C# (VS 2008 Professional)
|
Verfasst: So 09.09.07 18:17
Was heißt, es "kann nicht zugegriffen werden"? Präzisiere das.
|
|
rolandt4088 
      
Beiträge: 122
WINDOWS XP
Delphi 7, CodeGear RAD Studio
|
Verfasst: So 09.09.07 21:40
Ich arbeite mit Query.
Tabelle: Termin
Feld: alarmenabled vom Typ "Bool"
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| Beispiel: Query1.close; Query1.sql.clear; Query1.sql.add('select * from termin where alarmenabled = :alarmenabled'); Query1.parambyname('alarmenabled').asboolean := true; Query1.open; |
Der Datentyp Bool wird nicht erkannt. Somit kommt es unweigerlich zur entsprechenden Meldung die genau dies beschreibt.
Gruß
Roland
|
|
ene
      
Beiträge: 779
Erhaltene Danke: 1
Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
|
Verfasst: Mo 10.09.07 07:52
Moin,
bin mir grad nicht ganz sicher, aber vielleicht liegts am Bool. In Delphi ist das -1 und auf MySQL nur 1 und 0.
_________________ Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: Mo 10.09.07 09:05
Dann müsstest Du hier eben AsInteger verwenden und mit 1 oder 0 belegen, da (wie bereits gesagt) MySQLs Bool-Feld ein TinyInt ist.
|
|
rolandt4088 
      
Beiträge: 122
WINDOWS XP
Delphi 7, CodeGear RAD Studio
|
Verfasst: Mo 10.09.07 09:40
Moin,
vielen Dank für eure Hilfe.
Wenn das nur über die Umwandlung auf 0 und 1 geht, hätten die findigen Entwickler ja auf diesen Datentyp verzichtemn können.
Denn für mich heist es mehrarbeit und mehr "unnötiger" Quelltext.
Wie sieht das denn in MS-SQL aus? Gibt es da das gleiche Problem?
Gruß und einen schönen Montag
Roland
|
|
ene
      
Beiträge: 779
Erhaltene Danke: 1
Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
|
Verfasst: Mo 10.09.07 10:13
MS SQL hat -1 und 0.
_________________ Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
|
|