Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.16.67.13] |
|
Сообщ.
#1
,
|
|
|
Добрый день!
Есть SQL запрос на подсчет строк в таблтце: $this->OracleQuery1->SQL = "select........."; Как присвоить результат этого запоса переменной? |
Сообщ.
#2
,
|
|
|
как вариант то
$this->OracleQuery1->SQL = "select count(*) as \"count\" ..."; $count = $this->OracleQuery1->count; а так то как в делфи есть свойство fields где можно получить колонку по позиции. |
Сообщ.
#3
,
|
|
|
Что-то не то:
Application raised an exception class EPropertyNotFound with message 'Trying to access non-existant property OracleQuery->count in oracle.inc.php, line 1161.' Click for detailed informationCallstack #0 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\Projects\UVD_24.09.2010_new++\unit1.php Line: 315 |_Callstack #1 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\classes.inc.php Line: 1925 |_Callstack #2 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\classes.inc.php Line: 1999 |_Callstack #3 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\controls.inc.php Line: 1988 |_Callstack #4 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\classes.inc.php Line: 1564 |_Callstack #5 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\stdctrls.inc.php Line: 3832 |_Callstack #6 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\classes.inc.php Line: 1456 |_Callstack #7 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\Projects\UVD_24.09.2010_new++\unit1.php Line: 161 |_Callstack #8 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl\oracle.inc.php Line: 1161 |
Сообщ.
#4
,
|
|
|
попробуй второй вариант. хотя я точно помню что и первый работает, но перепроверить в данное время не могу.
Добавлено я конечно извиняюсь, а открытие дата сета было произведено? а то всякое бывает. я не написал строчки открытия так как посчитал что это и так понятно |
Сообщ.
#5
,
|
|
|
Цитата ViktorXP @ как вариант то $this->OracleQuery1->SQL = "select count(*) as \"count\" ..."; $count = $this->OracleQuery1->count; а так то как в делфи есть свойство fields где можно получить колонку по позиции. ну ребята может код и рабочий, но крайне нежелательно использовать зарезервированные названия в переменных и функциях лучше назови xcount иначе будеш искать ошибку до новых веников (тем более в open source проектах...) да и кавычки можно опустить $this->OracleQuery1->SQL = "select count(*) as xcount ..."; $xcount = $this->OracleQuery1->xcount; кстати - в кавычках этих скорее всего и проблема Добавлено Цитата Prosto_Coder @ Click for detailed informationCallstack #0 File: C:\Program Files\CodeGear\Delphi for PHP\2.0\Projects\UVD_24.09.2010_new++\unit1.php Line: 315 я бы ещё плюсы из пути убрал... |
Сообщ.
#6
,
|
|
|
Забейте на подсчет строк.
Появилась новая проблемма: $this->New_Query->SQL = "какой-то запрос"; $this->New_Query->close(); $this->New_Query->open(); $this->New_Query->first(); while($this->New_Query->eof) { ?> <tr> <?php for($j=0;j<27;j++) { ?><td>echo"Здесь должен вывадится результат SQL запроса (Кто-нибудь знает как это сделать? )"</td><?php } $this->New_Query->next(); ?></tr><?php } Я пробовал ф-ии getSQL и readSQL, но комптлятор говорит, что неможет приобразовать Object в string. M не забываем о подстветке |
Сообщ.
#7
,
|
|
|
Prosto_Coder у тебя опыт работы с базой данных есть? (имеется ввиду вообще не обязательно php или Delphi)
просто результат ты получаешь в виде колонок. посему и работать с им нужно поколоночно (хотя в php можно взять массив и вывести его одним махом, например через print_r(...)) |
Сообщ.
#8
,
|
|
|
Как понять "нуно работать поколоночно"? Результат запроса выводит значения для одного поля. Их мене надо записать в одну колонку таблтцы.
|
Сообщ.
#9
,
|
|
|
Цитата Prosto_Coder @ Результат тебе возвращается в виде таблици. которая состоит со строк и колонок.Как понять "нуно работать поколоночно"? Результат запроса выводит значения для одного поля. Их мене надо записать в одну колонку таблтцы. даже если ты запросишь одно единственное значение то результат тебе все равно вернется в виде таблицы, но она будет состоять с одной строки и одной колонки |
Сообщ.
#10
,
|
|
|
closed
|
Сообщ.
#11
,
|
|
|
поставь на форму компонент Query (например назовём его TempQuery)
тогда смотрим пример: $querystr = 'select id_order,sum_order from orders'; $this->TempQuery->close(); $this->TempQuery->SQL = $querystr; $this->TempQuery->open(); // здесь ещё можго было бы проверить на наличие записей... $this->TempQuery->first(); $xtable = '<table>'; while (!$this->TempQuery->eof) { $xtable = $xtable.'<tr><td>'.$this->TempQuery->id_order.'</td><td>'.$this->TempQuery->sum_order.'</td></tr>'; $this->TempQuery->next(); } $xtable = $xtable.'</table>'; $this->TempQuery->close(); echo $xtable; |