Abfragen auf Tabellen mit Umlauten / Sonderzeichen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfragen auf Tabellen mit Umlauten / Sonderzeichen

    Hallo an alle Interessenten,

    ich habe ein recht blödes Problem.

    vorhanden ist ein windows server 2008 mit einem sql Server, php 5.4 und der sqlsrv extension.

    Mein Vorhaben: Via PHP Abfragen auf die Datenbank zu machen

    Mein Problem: die Datenbank Struktur wurde bereits angelegt und wird genutzt (via asp / access - kein plan davon)
    es sind leider Tabellen und / oder Felder wie "Übersicht" o.ä. angelegt. sprich mit Umlauten.

    Meine Abfrage
    Code:
    $sql = "SELECT * FROM [Tbl_mit_öhmlaut]";
    $stmt = sqlsrv_query( $conn, $sql );
    if( $stmt === false) {
        die( print_r( sqlsrv_errors(), true) );
    }
    wirft dann natürlich einen Fehler:
    Code:
    Array
    (
        [0] => Array
            (
                [0] => 42S02
                [SQLSTATE] => 42S02
                [1] => 208
                [c_o_d_e] => 208
                [2] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Invalid object name 'Tbl_mit_öhmlaut'.
                [message] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Invalid object name 'Tbl_mit_öhmlaut'.
            )
    )
    Abfragen bei Tabellen ohne Umlaute klappen reibungslos.

    Leider ist es nicht wirklich möglich die Tabellen / Felder einfach um zu benennen da mehrere Sachen bereits darauf zugreifen.

    Das Dokument ist in UTF-8 ohne BOM kodiert und im Meta Tag ist charset utf-8 angegeben...

    Gibt es eine Lösung trotz der Umlaute SQL Abfragen zu machen?
    Wie müsste ich vorgehen?

    Ich hoffe das war verständlich erklärt.
    Danke im Vorraus.

  • #2
    Falls es interessiert ich habe es gelöst (vorerst wahrscheinlich..)

    Code:
    $sql = "SELECT * FROM [Tbl_mit_".chr(246)."hmlaut]";
    hat das Problem gelöst und funktioniert..

    Hier nochmal eine "liste" der Umlaute..
    "ä" , "ö" , "ü"
    chr(228),chr(246),chr(252)

    Kommentar


    • #3
      Also im Grunde genommen: Eben nicht UTF-8 …
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Ja, so wie es aussieht, hast du die Datenbankverbindung nicht auf UTF-8 gesetzt.

        Kommentar

        Lädt...
        X