Re: Warning: odbc_exec() [function.odbc-exec]: SQL error: [unixODBC][FreeTDS][SQL Server]Invalid cursor state, SQL state 24000 in SQLExecDirect in
Ran September <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
yeah, sure i can do that thanks... On Wed, Feb 18, 2009 at 10:21 PM, Robert Gonzalez < [email protected]> wrote: > Try adding some error checking on your calls along the way. When things > fail > PHP is pretty good at telling you why. > > On Wed, Feb 18, 2009 at 11:18 PM, Ran September <[email protected] > >wrote: > > > oh, sorry i had a follow up question. does odbc freetds can execute a > query > > like this: > > > > $sql2="SELECT * FROM events where company = '$custid' and > "."gage_sn > > = '$cal' and ". "(event_type like '%cal%' or event_type = 'Repair' or > > event_type = 'Op-Check')"; > > > > cause when i executed it: > > while (odbc_fetch_row($rs2)) > > { > > $etype=trim(odbc_result($rs2,"event_type")); > > $enum=odbc_result($rs2,"event_num"); > > $edate=odbc_result($rs2,"event_date"); > > $edate = date("M-j-Y", strtotime($edate)); > > $eresult=trim(odbc_result($rs2,"event_result")); > > ?> > > i received the following error: > > *Warning*: odbc_fetch_row(): 9 is not a valid ODBC result resource in * > > /var/www/localhost/htdocs/customer.microprecision.com/gage.php* on line > > *180 > > * i wonder why, the syntax looks right to me. do you think the > > "(event_type like '%cal%' or event_type = 'Repair' or event_type = > > 'Op-Check')"; from $sql2 variable causing the error? > > > > Thanks again. > > > > On Wed, Feb 18, 2009 at 8:33 PM, James K. Lowden <[email protected] > > >wrote: > > > > > Ran September wrote: > > > > i will try to become a "better programmer" :-D > > > > > > And so you are doing. :-) > > > > > > > although i didn't get the "outer join to mpc_web_users" part > > > > > > > > > > > > http://publib.boulder.ibm.com/infocenter/rbhelp/v6r3/index.jsp?topic=/com.ibm.redbrick.doc6.3/ssg/ssg74.htm > > > http://en.wikipedia.org/wiki/Join_(SQL)#Outer_joins<http://en.wikipedia.org/wiki/Join_%28SQL%29#Outer_joins> > <http://en.wikipedia.org/wiki/Join_%28SQL%29#Outer_joins> > > <http://en.wikipedia.org/wiki/Join_%28SQL%29#Outer_joins> > > > > > > I can't tell from your script what the relationship is between gages > and > > > mpc_web_users. There doesn't seem to be any; the results of the first > > > query don't seem to affect $userid, which is what's used as a key in > the > > > second query. > > > > > > If $userid is invariant within the loop, the second query could be > > > factored out. Get the row(s) from mpc_web_users, then proceed with > > gages. > > > > > > > > > If the two are related -- if the row you want from mpc_web_users varies > > > with the data you fetch from gages -- then fetch both parts at once, > > > something like: > > > > > > SELECT g.*, U.nusers > > > FROM gages as g > > > left outer join ( > > > select count(*) as nusers, user_name > > > from mpc_web_users > > > ) as U > > > on g.something = U.user_name > > > where company = '$custid' > > > and gage_sn ='$sn' > > > > > > That's just one approach. Depending on your data and exactly what > you're > > > trying to do, several alternatives come to mind. Cf. "cross join". > > > > > > All to say: SQL is your friend. Learn it. Use it. Exploit it. Not to > > be > > > a better programmer, however nice that might be, but to work less. > > Create > > > more from less code by letting the database do the work for you. If > > > you're going to spend your day scripting webservers, I can't offer > better > > > advice. > > > > > > > but is it true that installing the mssql.so will solve this? > > > > > > No. Please re-read the faq. Remember: "one active statement at a time > > > per connection" is a property of the *protocol*. The server won't > accept > > > a second query until it's done answering the first one. > > > > > > --jkl > > > _______________________________________________ > > > FreeTDS mailing list > > > [email protected] > > > http://lists.ibiblio.org/mailman/listinfo/freetds > > > > > > > > > > > -- > > R > > _______________________________________________ > > FreeTDS mailing list > > [email protected] > > http://lists.ibiblio.org/mailman/listinfo/freetds > > > > > > -- > > Robert Gonzalez > http://www.robert-gonzalez.com > _______________________________________________ > FreeTDS mailing list > [email protected] > http://lists.ibiblio.org/mailman/listinfo/freetds > -- R