Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Sql 2005 if exists

Empfohlene Antworten

Veröffentlicht

hi, mache gerade meine ersten schritte mit sql 2005 und bin mir nicht sicher ob folgendes funktioniert:

SET @query = 'SELECT * FROM ' + @table_name

IF EXISTS (EXEC(@query))

Der Server erzählt mir etwas von falscher syntax. Ich kann mir eigentlich nicht vorstellen, dass diese konstruktion grundsätzlich nicht funktioniert.... was meint ihr?

hi, mache gerade meine ersten schritte mit sql 2005 und bin mir nicht sicher ob folgendes funktioniert:

SET @query = 'SELECT * FROM ' + @table_name

IF EXISTS (EXEC(@query))

Der Server erzählt mir etwas von falscher syntax. Ich kann mir eigentlich nicht vorstellen, dass diese konstruktion grundsätzlich nicht funktioniert.... was meint ihr?

Bin zwar auch blutiger Anfänger, aber heißt das net:

select * from table_name

? Ich meine ohne dem " ' ' " und ohne @.:)

@table_name ist eine variable. die zeile mit SET baut einen string zusammen, der später ausgeführt werden soll.

@table_name ist eine variable. die zeile mit SET baut einen string zusammen, der später ausgeführt werden soll.

Dann probiers doch einfach in der Testumgebung aus.:)

ich sagte doch, dass der server etwas von falscher syntax schreibt, wenn ich das kommando absetze. der befehl ist aber so klein, dass man an der syntax nicht viel falsch machen kann ;) ... ich weiß eben nur nicht ob eine solche konstruktion mit IF EXISTS und dem EXEC überhaupt möglich ist

Hi,

SQL ist eine mengenorientierte Abfragesprache und keine Programmiersprache. Wenn Du wissen möchtest, ob in der Tabelle Einträge sind, dann verwende die COUNT Funktion ggf. mit der TOP Klausel.

In T-SQL oder PL/SQL muss das Ergebnis eines SQLs immer auch irgendwo abgespeichert werden. Einfach ein SQL ausführen funktioniert nicht. Du musst einen explizieten oder Implizieten Cursor verwenden, damit die DB auch weiß wohin denn das Ergebnis abgelegt werden soll.

mache gerade meine ersten schritte mit sql 2005

Mein Rat: Such dir ein Tutorial im Internet oder besser noch besorg dir ein gutes Buch über den SQL Server (die Bewertungen bei amazon helfen bei der Auswahl). Ansonsten dürften sich deine Ersten Schritte unnötig schwerer als nötig gestalten. Den Kaufpreis des Buches kannst übrigends von der Steuer absetzen (evtl. ist noch eine Bestätigung des AG nötig).

Dim

die im OP angegebene syntax ist erstens flasch, zweitens sinnlos.

wozu sollte man ein mittels EXE ausgeführtes SELECT-ergebnis auf EXISTS überprüfen wollen?

wenn du die anzahl des abfrageergebnisses haben willst, verwende anschliessend ROWCOUNT:

SELECT @RowCount = @@ROWCOUNT

s'Amstel

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.