2010-09-22 14 views
7

In Sybase SQL, vorrei eseguire una stringa contenente SQL.Sybase, esegue stringa come query sql

mi sarei aspettato qualcosa di simile al lavoro

declare @exec_str char(100) 
select @exec_str = "select 1" 
execute @exec_str 
go 

dal documentation of the exec command

eseguire | exec

is used to execute a stored procedure or an extended stored 

procedura (ESP). Questa parola chiave è necessaria se esistono più istruzioni nel batch.

execute viene utilizzato anche per eseguire una stringa contenente Transact-SQL.

Tuttavia, nell'esempio precedente viene visualizzato un errore. Sto facendo qualcosa di sbagliato?

risposta

8

c'è bisogno di bracketing:

execute (@exec_str) 
+1

wow, grazie * spacca la testa sulla scrivania * – Mike