Конференция "Базы" » ADODataSet - предикаты [D7, MSSQL]
 
  • u905097 (19.06.12 12:21) [0]
    может кто-то подскажет как реализовать такой (динамический) запрос в ADODataSet, где конструкция запроса может изменяться предикатом @DEPT_PREDICATE:
    ----------------------------------------------
    DECLARE @DEPT_PREDICATE varchar(30);
    --SET @DEPT_PREDICATE=:DEPT_PREDICATE
    SET @DEPT_PREDICATE='WHERE d.deptid = 46'
    SELECT *
     FROM vdepartment d
     @DEPT_PREDICATE
    ----------------------------------------------

    спасибо !
  • Anatoly Podgoretsky © (19.06.12 12:30) [1]
    Что то не наблюдается в 2005, да и по синтаксису видно, что это обычная макропостановка, широко используется для построения динамических запросов.
  • u905097 (19.06.12 13:12) [2]
    не работает, говорит:
    ------
    Error 19.06.2012 12:09:40 0:00:00.000 <link> - SQL Server Database Error: Incorrect syntax near '@DEPT_PREDICATE'.
    ------
    в SELECT выражении
  • stas © (19.06.12 13:25) [3]
    DECLARE @SQL VARCHAR(MAX),  @DEPT_PREDICATE varchar(30);
    SET @DEPT_PREDICATE='WHERE d.deptid = 46'
    SET @SQL = 'SELECT * FROM vdepartment d '+@DEPT_PREDICATE
    EXEC @SQL

  • Cobalt © (19.06.12 17:07) [4]
    может, хранимые процедуры помогут?
 
Конференция "Базы" » ADODataSet - предикаты [D7, MSSQL]
Есть новые Нет новых   [119837   +171][b:0][p:0.001]