Manuell Flucht Kommas auf SQL-Anweisungen

Ich habe eine yuzeyKo (varchar) Tabelle mit Koordinaten wie diese : 23,45 (longitude,latitude)

Zum Beispiel werde ich ausführen einer SQL folgendermaßen :

SELECT COUNT(*) FROM tablename WHERE yuzeyKo = 29,59;

Aber (natürlich) funktioniert das nicht. Es ist ein syntax-Fehler, da habe ich die Flucht Komma auf WHERE yuzeyKo = 29,59;

Aber es gibt keine spezielle escape-Zeichen für Anführungszeichen. Was soll ich tun?

Ich bin mit MySQL .

  • Ich vote für die Verwendung eines ORM-Schicht, die behandelt wird diese Art von Sache, die automatisch für Sie.
  • Was ist der Datentyp, der yuzeyKo Feld?
  • Warum würden Sie jemals eine varchar geben Sie für ein Feld, das eindeutig kennzeichnet eine Dezimalzahl?
  • Ich bin wirklich Fragen, warum Sie die Abstimmung -1 . Können wir nicht jede Frage zu stellen ? Ich bin nicht der SQL guru 😉 Auch ich hab recherchiert, es, bevor Sie Fragen . Aber ich Forschung mit Komma in der sql-Anweisung , SQL escaping von Zeichen und escape-Zeichen für das Komma in SQL . Ich habe nicht bemerkt, die ich habe zu verwenden 29,59 als string und ich muss mit Anführungszeichen (yuzeyKo = '29,59';)
  • Wenn das Komma soll ein Dezimaltrennzeichen in ein numerisches literal, dann sollten Sie über einen Zeitraum statt. Numerische Literale müssen, verwenden Sie einen Punkt als Dezimaltrennzeichen, wie in dem SQL-standard. Wenn das Komma soll separaten ein paar zahlen sind, dann sollten Sie stattdessen die Verwendung von zwei getrennten Spalten. Spalten im relationalen Modell werden soll, einfach, nicht zusammengesetzt.
  • weil es halt ein Komma . Welchen Typ sollte ich verwenden? (Ich bin ein SQL-student 😉 ich werde sein froh, dass ich Ihnen etwas vorschlagen.
  • ich glaube, Sie missverstanden. Es ist nicht ein dezimal-Trennzeichen. Das ist die breiten-und Längengrade. Es wird das format : Länge(Komma)Breite .
  • daher das bedingte "wenn". Hinweis ich auch erwähnen, was Sie tun sollten, wenn das Komma trennt einem paar von zahlen. Wenn dies Teil eines GIS, Sie können auch ein Punkt.

InformationsquelleAutor Eray | 2011-08-30
Schreibe einen Kommentar