Re: Fastest way to read tuples - Mailing list pgsql-odbc
From | Chris Gamache |
---|---|
Subject | Re: Fastest way to read tuples |
Date | |
Msg-id | 20030325151625.46205.qmail@web13806.mail.yahoo.com Whole thread Raw |
In response to | Fastest way to read tuples ("Joachim Zauner" <j.zauner@epcom.cc>) |
List | pgsql-odbc |
500 tuples is 500 tuples whether you pull them all at once, or one at a time. You can either take your time up-front or spread it out. Spreading it out would have the smallest "psychological" impact on your users, yes? I'm not sure you're going to get much faster on the client interface. Assuming that you're PostgreSQL configuration is properly optimized and vacuumed, your 64k line would seem to be the bottleneck... Having said that, a good trick for faster tuple access in ADO is the rs.getrows method. If you're using rs.movenext, your eating up more client-side processor power than you need. See www.devguru.com for more nifty ADO tricks. set conn = createobject("adodb.connection") conn.open connstr mysql = "select * from test;" set rs = conn.execute(mysql) aRows = rs.getrows sRow = "" for j = 0 to ubound(aRows,2) for i = 0 to ubound(aRows,1) sRow = sRow & aRows(i,j) next debug.print(sRow) sRow = "" next HTH, CG --- Joachim Zauner <j.zauner@epcom.cc> wrote: > Hi List, > I want to retrieve (readonly) 500 - 1500 Tuples via ODBC in an Visual Basic > 6 Program over a 64kBit Line. The Raw Data of 500 Tuples is ~ 52kb but it > takes 7 Seconds to fill the Recordset. > Currently I use ADO to access the DB. I played around with Cursors but no > effect (with Serverside Cursor the execution of the SQL String is faster but > walking throug the Rows is slower). > > The Problem is not the SQL String - the Server takes only 0.2 Seconds for > the Query but the Transfer of the Dataset is slow. Is RDO or DAO (or > whatever) faster? > > Now some Info about my System: > ODBC Version: 07.02.0005 > VB 6.0 Enterprise SP5 > W2k Pro SP3 > PostgreSQL 7.2.1 on SuSE Linux (for Development / 7.3 for Production) > > My Connectionstring: > DRIVER={PostgreSQL+ (Beta)};DATABASE=ticket;SERVER=myServer > ;PORT=5432;UID=myuser;PWD=mypass;ReadOnly=1;Protocol=6.4;FakeOidIndex=1;Show > OidColumn=1;RowVersioning=0;ShowSystemTables=0;ConnSettings=;Fetch=100;Socke > t=4096;UnknownSizes=0;MaxVarcharSize=254;MaxLongVarcharSize=8190;Debug=0;Com > mLog=0;Optimizer=1;Ksqo=1;UseDeclareFetch=1;TextAsLongVarchar=1;UnknownsAsLo > ngVarchar=0;BoolsAsChar=0;Parse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=d > d_;;LFConversion=1;UpdatableCursors=1;DisallowPremature=0;TrueIsMinus1=0;BI= > 0' > > Regards, > j.zauner > > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com
pgsql-odbc by date: