Announcement

Collapse
No announcement yet.

Anzeigeformatierung bei SQL Abfragen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Anzeigeformatierung bei SQL Abfragen

    Hallo,
    ich habe erst seit kurzem mit MSSQL Server zutun und habe vorher an Oracle Datenbanken gearbeitet.
    Gibt es bei MSSQL die Möglichkeit die angezeigten Abfrageergebnisse zu formatiere, wie es bei Oracle mittels PL/SQL geht?

  • #2
    Nur sehr begrenzt, ausser CAST und CONVERT gibt es keine Formatierungsmöglichkeiten. Ich hatte neulich das gleiche Probleme bei einer Portierung von Access auf SQL Server 2005. Ich habe mir so beholfen, dass ich eine Assembly geschrieben habe, die mir die nötigen Formatierungsanweisung bereitstellt. Geht ja recht einfach dank der CLR Integration.

    Gruß,
    Martin

    Comment


    • #3
      Was ist mit Assembly gemeint. Ich habe leider von der ganzen richtigen "Programmierung" um die Datenbank herum nciht so viel Ahnung, nur von triggern procedures etc.

      Mir fällt gerade auf, dass ich die Frage vielleicht nicht richtig formuliert hatte. Was ich meine ist, ob man an der positionierung (Anordnung) der zurückgegebenen Daten etwas tun läßt.

      Beispiel:
      wir lassen uns Artikelnummer und Preise zurückgeben. Ist es möglich zu sagen Artikelnummer steht in Zeile 1 auf dem Antwortbildschirm. Preis 1 folgt auf Zeile 2 darunter und daneben kommt Artikel 3.
      Artikel 4 steht auf Zeile 3 schräg unter Art. 3 etc...

      Also nur die Anordnung und keine Formatierung im Sinne eienr Konvertierung.

      LG
      Zuletzt editiert von Andre.Arnold; 13.09.2007, 13:58. Reason: habe etwas vergessen

      Comment


      • #4
        Assembly ist in etwa das, was bei der Oracle die Java Integration ist.

        Aber dein Zusatz hört sich so an, als ob ihr mit einem Reportgenerator arbeitet? Eine Datenbanken gibt ja nur die Daten zurück. Wie die schlußendlich dem Bentzer präsentiert werden, ist doch nicht mehr Sache der DB, sondern des Anzeigeteils, also vom Client.

        Gruß,
        Martin

        Comment


        • #5
          >Wie die schlußendlich dem Bentzer präsentiert werden, ist doch nicht mehr Sache der DB, sondern des Anzeigeteils...

          Ja, da hast du vollkommen Recht, das wäre im Normalfall auch kein Problem. Bevor ich meine Anwendung mit der DB realisiere, würde ich diese gern ausgiebig testen, da sie teilweise kritische Daten / functions enthält. Danach will ich mir der Applikation anfangen. Also brauch ich ne Möglichkeit dem Client zu sagen wie er die Rückgabedaten für mich optisch gut erkennbar strukturieren kann, bzw. Labels in Functions definieren.

          Man konnte eben dies bei Oracle machen. Nachdem man SQL Skripte in den CLP gegeben hat konnte man halt sagen nach der Zeile läßt du 12 px Platz oder das ordnest du links an und das rechts daneben ....

          Es kostet mich viel Zeit da erst irgendwas davorzubauen und da kam ich als alter Oraclenutzer darauf ob die Möglichkeit irgendwie von mssql (bei oracle abge-) implementiert wurde.

          LG

          Comment


          • #6
            CLP? Ich hab zwar auch ein bißchen Oracle-Erfahrung, aber das sagt mir nix. Was ist denn das für ein Tool?

            Aber wenn du die Ausgabe eh mit einer Anwendung machst, brauchst du die Möglichkeit der Formatierung doch sowieso nicht. Da würde ich mir an deiner Stelle nicht die Arbeit machen, das zu testen.

            Gruß,
            Martin

            Comment


            • #7
              CLP = Command Line Processor, die haben das bei Oracle weiterentwickelt zu einem SQL Plus Interface. Da kannst du mittels definierten Sprachkonstrukten die Formatierung der Ausgaben angeben.

              Ich weiss das es mit der Anwendung schneller gehen würde, das problem ist das ich viele Trigger etc. drinne hab. Am Ende krieg ich ne Macke wenn ein trigger ned funktioniert und ich auf Fehlersuche gehen muß.

              LG

              Comment


              • #8
                Achso, SQL Plus hast du gemeint. Das Tool habe ich nur verwendet, um script-gesteuert eine DB aufzusetzen oder Update-Scripts auszuführen. Die Entsprechung bei SQL Server 2005 ist SQLCMD. Aber die Spaltenbreite kannst du da meines Wissens nicht einstellen.

                Gruß,
                Martin

                Comment

                Working...
                X