Announcement

Collapse
No announcement yet.

Eingabeaufforderung für Variable

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

  • Eingabeaufforderung für Variable

    Hallo zusammen,

    ich mache gerade ein Praktikum, bei dem ich ein SQL Script in Microsoft SQL Server Management Studio 2005 verfassen soll.

    Dabei geht es darum, dass eine bestimmte ID durch den Benutzer des SQL Scriptes eingegeben werden soll, um nach dieser zu Filtern.

    Ich habe bisjetzt nur SQL Abfragen in Access erstellt, und dachte mir somit, das ich einfach eine simple Parameterabfrage erstellen kann:

    Select *
    From ABC (hier hab ich ein paar left outer joins)
    where abc.ID like [Bitte ID eingeben:] & "*"


    So habe ich das mal auf dem Berufskolleg gelernt, funktioniert nur leider hier nicht.

    Fehler ist "Invalid column name [Bitte ID eingeben:]".
    Nun dachte ich mir ok, lass ich das halt einfach weg, funktioniert in Access trotzdem. Hier leider auch nicht:

    Select *
    From ABC (hier hab ich ein paar left outer joins)
    where abc.ID like "*"

    Dabei bekomme ich zwar keinen Fehler mehr, aber ich bekomme keine "Inputbox" wie bei Access, wo ich die entsprechende ID eingeben kann.


    Ich HOFFE das mir jemand hier weiterhelfen kann, und gebe gerne weitere Informationen, fals ich etwas vergessen habe.


    Mit freundlichen Grüßen

    Tias

  • #2
    MSSQL, MySQL, ORACLE u.v.m. sind Serverdatenbanken. Dort gibt es keine Inputboxen wie bei Access
    Christian

    Comment


    • #3
      Es gibt aber die Möglichkeit innerhalb der mitgelieferten (Kommandozeilen)programmen mit dem User zu interagieren und ich denke das möchte der OP.
      Für sqlplus wüsste ich es, bei MSSQL muss ich aber passen.

      Dim
      Zitat Tom Kyte:
      I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

      Comment


      • #4
        Versuchs mal so:
        [highlight=sql]Select *
        From ABC (hier hab ich ein paar left outer joins)
        where abc.ID like @ID[/highlight]
        Begründung: In MS-SQL werden Parameter mit @ und Name bezeichnet. Wenn ein solcher Aufruf in ein Programm eingebaut wird (z.B. C#), dann wird damit ein Parameter deklariert; im nächsten Schritt muss ein Wert zugewiesen werden. Es könnte sein, dass das MSSM dies ebenfalls erkennt und interpretiert.

        Beachte, dass die Wildcards '%' und '_' im Parameter-Text enthalten sein müssen.

        Jürgen

        PS 1. SQL-Befehle sollten mit [highlight=sql]Befehlstext[/highlight] markiert werden.

        PS 2. Du arbeitest mit MS-SQL. Warum benutzt du dann nicht das Unterforum, das dafür vorgesehen ist?

        PS 3. Ein LIKE kommt mir bei einer ID seltsam vor.

        PS 4. IBExpert arbeitet für Firebird genauso, wie ich es beschrieben habe.

        Comment


        • #5
          Hallo nochmal, und danke für eure Antworten,

          kann mir vielleicht jemand ein paar mehr Informationen zu dem Beitrag von "dimitri" geben?

          Oder gibt es noch andere möglichkeiten, das der User "gefragt" wird...

          MfG

          Tias

          PS: Danke Jürgen, ich werde deine hinweise demnächst beachten.

          Comment


          • #6
            Hallo,
            kann mir vielleicht jemand ein paar mehr Informationen zu dem Beitrag von "dimitri" geben?
            SQL Server lässt sich (auch) via Kommandozeile bedienen, Stichwort SQLCMD (analog zu Oracle mit sqlplus). Und eine grafische Oberfläche lässt sich mit Visual Studio wohl etwas einfacher herstellen als mit dem Man. Studio.
            MfG
            Cheat-Sheets for Developers / Programming Quotes

            Comment

            Working...
            X