Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.252.87] |
|
Сообщ.
#1
,
|
|
|
Добрый день .
Возникла проблема с добавлением записи в базу данных при использовании компоненты Query . Добавление записи происхожит таким образом : <?php //Includes require_once("vcl/vcl.inc.php"); use_unit("dbtables.inc.php"); use_unit("forms.inc.php"); use_unit("extctrls.inc.php"); use_unit("stdctrls.inc.php"); //Class definition class Unit1 extends Page { public $Button1 = null; public $Query1 = null; function Button1Click($sender, $params) { $this->Query1->SQL="insert into table (q,a,z) values (Null,null,null)"; $this->Query1->Active=true; } } global $application; global $Unit1; //Creates the form $Unit1=new Unit1($application); //Read from resource file $Unit1->loadResource(__FILE__); //Shows the form $Unit1->show(); ?> В итоге при активайии компоненты в SQl дописывается директива LIMIT и добаление записи не происходит . Как избавится от етой директивы ? |
Сообщ.
#2
,
|
|
|
Насчёт LIMIT не знаю, но запрос я бы изменил на "insert into [table] ..."
|
Сообщ.
#3
,
|
|
|
Лучше юзай все через ХП, а в php только параметрами кидайся.
Цитата MIF @ дописывается директива LIMIT Подозреваю, что в D4php компонент юзается только по назначению, т.е. именно для запросов, а не для IUD. Или попробуй перед выполнением указать LimitCount = -1 |
Сообщ.
#4
,
|
|
|
однозначно $this->Query1->LimitCount = -1
однозначно не использовать зарезервированных слов - преименуй таблицу table в другое имя например table1 или как уже писали [table] и всё будет работать ещё вариант с помощью компонента Database $this->Database1->execute("insert into table (q,a,z) values (Null,null,null)"); похожий вариант с параметрами function SetSysParam($p_Name,$p_Value) /* записать сист параметр */ { $query ='UPDATE param_sys SET p_value=? WHERE (p_name=?)'; $xarray=array(); $xarray[]=$p_Value; $xarray[]=$p_Name; GetDBModule()->Database1->execute($query,$xarray); } ещё вариант с Query (как null вставить нужно пробовать) $this->Query1->SQL = 'select q,a,z from table1' $this->Query1->Append(); $this->Query1->q="1"; $this->Query1->a="2"; $this->Query1->z="3"; $this->Query1->Post(); $this->Query1->Refresh(); |
Сообщ.
#5
,
|
|
|
Всем спасибо за советы .
На днях попробую их проверить . |