Als «dynamic-sql» getaggte Fragen

Erstellen einer Abfrage zur Laufzeit mit Verkettungsoperationen für Zeichenfolgen und Ausführen der Abfrage aus dieser Zeichenfolge.

4
Gibt es eine Möglichkeit, ein Tabellenerstellungsskript in TSQL zu generieren?
Gibt es eine Möglichkeit, ein Erstellungsskript ausschließlich in T-SQL aus einer vorhandenen Tabelle zu generieren (dh ohne Verwendung von SMO, da T-SQL keinen Zugriff auf SMO hat)? Angenommen, eine gespeicherte Prozedur empfängt einen Tabellennamen und gibt eine Zeichenfolge zurück, die das Erstellungsskript für die angegebene Tabelle enthält. Lassen Sie mich …

3
Alternativen zur Verkettung von Zeichenfolgen oder zur Vorgehensweise, um die Wiederholung von SQL-Abfragecodes zu verhindern?
Haftungsausschluss: Bitte nehmen Sie mich als jemanden mit, der nur einen winzigen Teil seiner Arbeitszeit mit Datenbanken verbringt. (Die meiste Zeit mache ich C ++ - Programmierung in meinem Job, aber jeden ungeraden Monat muss ich etwas in einer Oracle-Datenbank suchen / reparieren / hinzufügen.) Ich musste wiederholt komplexe SQL-Abfragen …

2
Warum tritt SQL Injection bei dieser Abfrage in einer gespeicherten Prozedur nicht auf?
Ich habe die folgende gespeicherte Prozedur erstellt: ALTER PROCEDURE usp_actorBirthdays (@nameString nvarchar(100), @actorgender nvarchar(100)) AS SELECT ActorDOB, ActorName FROM tblActor WHERE ActorName LIKE '%' + @nameString + '%' AND ActorGender = @actorgender Jetzt habe ich versucht, so etwas zu tun. Vielleicht mache ich das falsch, aber ich möchte sicher sein, …





2
Dynamisches Ändern der Datenbank mit TSQL
Ich habe Probleme beim Versuch, den Kontext von SSMS dynamisch in die in dynamischem SQL angegebene Datenbank zu ändern: EXEC sys.sp_executesql N'USE db1 ' ; Es wird erfolgreich ausgeführt, der Datenbankkontext von SSMS ändert sich jedoch nicht. Ich habe versucht, eine geringfügige Änderung an den oben genannten so DECLARE @sql …



2
Wie kann ich Spalten dynamisch aliasen?
Ich habe eine Tabelle (nicht von mir entworfen) mit 20 variabel benannten Spalten. Das heißt, je nachdem, welche Art von Datensatz Sie betrachten, kann sich der zutreffende Name der Spalte ändern. Die möglichen Spaltennamen werden in einer anderen Tabelle gespeichert, die ich sehr einfach abfragen kann. Daher lautet die Abfrage, …

1
sp_execute erwartet den Parameter '@handle' vom Typ 'int'
Ich versuche, eine gespeicherte Prozedur einzuchecken, wenn eine Tabelle in meiner Zieldatenbank vorhanden ist. Wenn dies nicht der Fall ist, erstelle ich die Tabelle unter Verwendung der Tabellen information_schema aus der Quellendatenbank. Wenn ich jedoch sp_execute verwende, um zu versuchen, die Tabelle wiederherzustellen, erhalte ich den Fehler. Die Prozedur erwartet …

1
Druckparameter in Dynamic SQL
Ich habe dynamisches SQL für viele Aufgaben verwendet und bin ständig auf dasselbe Problem gestoßen: Drucken von Werten von Variablen, die in der dynamischen T-SQL-Anweisung verwendet werden. Z.B: Declare @SQL nvarchar(max), @Params nvarchar(max), @DebugMode bit, @Foobar int select @DebugMode=1,@Foobar=364556423 set @SQL='Select @Foobar' set @Params=N'@Foobar int' if @DebugMode=1 print @SQL exec …

1
sp_prepexec (sp_execute) vs. sp_executeSQL
Das Kernstück der Frage: Sind tatsächlich gespeicherte Prozeduren der einzige Mechanismus, der das Zwischenspeichern von temporären Tabellen implementiert, oder nutzen gespeicherte Systemprozeduren wie sp_executeSQL/ sp_executeauch diese? Ich bin kein DBA, bitte verwenden Sie kleine Wörter. Unsere Anwendung sendet über vorbereitete Anweisungen , die vom Profiler, ich laufe sehen Sie alle …

5
Wechseln zwischen Datenbanken mit dynamischem SQL
Ich habe einen Prozess, bei dem verschiedene Befehle zwischen mehreren Datenbanken ausgeführt werden. Wenn ich jedoch dynamisches SQL verwende, um die Datenbank mit 'use @var' zu ändern, ändert sich die Datenbank nicht wirklich. Ausführen in [test_db]: declare @currentDB varchar(max) declare @sql varchar(max) set @currentDB = DB_NAME() set @sql = 'use …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.