Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> ADO - problem z recordset'ami
zietek
post
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 1
Dołączył: 25.12.2007

Ostrzeżenie: (0%)
-----


Witam,

Moje zapytanie do bazy zawiera polecenia INSERT, UPDATE, EXEC, SELECT, DELETE...
Ponizszy skrypt ma zwrocic tablice z danymi ze wszystkich otrzymanych recordsetow (odpowiednik DataSeta w C#). Wszystko swietnie dziala do puki korzystam z SELECT'OW lub wywolana procedura skladowana zwraca jakies dane.
W przeciwnym razie recordset nie zawiera danych tabelarycznych i skrypt wywala sie przy probie uzycia metody RecordSet.EOF

1) Jak sprawdzic czy recordest zawieta dane tabelaryczne?
2) jak sprawdzic czy recordset pochodzi od INSERT/UPDATE/DELETE i jak odebrac wtedy ilosc zaktualizowanych rekordow?
3) Czy do tworzenia stringu SQL isnieja jakies metody (np bindujace stringi i dane binarne), czy pisze sie go 'z palca' ?

[Kod PHP]

<pre>
<?php
header('Content-Type: text/html; charset=utf-8');


$db=new COM('ADODB.Connection',null,CP_UTF8);
$db->Open('DRIVER={SQL Server};SERVER=.\SQLEXPRESS;DATABASE=bazka;UID=php;PWD=php1');


$rs=$db->Execute("SELECT 1 AS numer;UPDATE dbo.domy SET adres='aaa'");

$ds=array();
do{
if(1==1){ // ad.1)
$ta=array();
while(!$rs->EOF){
$ro=array();foreach($rs->Fields as $fd){$ro[$fd->Name]=(string)$fd->Value;}
$ta[]=$ro;
$rs->MoveNext();
}
$ds[]=$ta;
}
}while($rs=$rs->NextRecordSet());


$db->Close();

print_r($ds);
?>
</pre>




Ten post edytował zietek 4.02.2008, 19:50:59
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 05:37