Troy,
Hey, no problem - I didn't take the statement as such.
Regards,
Jason
------------------
Announcement
Collapse
No announcement yet.
NT Service PB or VC++
Collapse
X
-
Guest replied
-
...I would like to make one small comment. The NT service
code I wrote for PB is supposed to be just boilerplate code.
If there's something else you'd like to see added to it,
I'd be willing to add it to the BAS file...
when I wrote it. I'm sorry. I never would have figured out NT
Services to start with if it weren't for your code.
------------------
Troy King
[email protected]
Leave a comment:
-
Guest repliedTroy,
While I think Bock is an awesome programmer, and certainly more
skilled than myself, that particular NT Service implementation
is a bit lacking. It would be highly handy for using as a basis,
though, and seeing how some of the conversions are done.. I would like to make one small comment. The NT service code I wrote for PB is supposed to be just boilerplate code. If there's something else you'd like to see added to it, I'd be willing to add it to the BAS file (when I have the time
).
Regards,
Jason
------------------
Leave a comment:
-
Josh:
My rating would be more like this:
ODBC-SQL Tools: 100%
ODBC - 110 - 200% (if not an ODBC expert)
OLE DB - 110% - 150%
ADO - About 5% more on top of OLE DB.
I did some speed tests about a year ago at my previous employer,
and I think those are about the numbers I came up with across a
broad sprectrum of trials. Frankly, ODBC is so ungodly
complicated when you're trying to write generic code, it would
be next to impossible, in my opinion, to approach the speed of
SQL Tools. In some cases, however, DBLIB is faster. However, DBLIB
has been deprecated, and in cases with extremely large result sets,
I find it slower than ODBC. I did not locate the exact break point,
but a particular 2 million-row result set I work with regularly
took about 50% longer with DBLIB. Sets smaller than a couple
thousand rows were quicker, though.
Also, I have not used SQL Tools from C or C++, but you've given
me a hell of an idea. I wonder if Eric has conversions of the
header files.
Paul: ADO is another library on top of OLE DB.
While I think Bock is an awesome programmer, and certainly more
skilled than myself, that particular NT Service implementation
is a bit lacking. It would be highly handy for using as a basis,
though, and seeing how some of the conversions are done.
------------------
Troy King
[email protected]
Leave a comment:
-
I thought ADO and OLE DB was the same thing!!!
------------------
Paul Dwyer
Network Engineer
Aussie in Tokyo
Leave a comment:
-
see:
http://www.powerbasic.com/support/pb...ad.php?t=22982
------------------
peter.
mailto[email protected][email protected]</a>
Leave a comment:
-
Guest repliedI would suggest that you check out Jason Bock's website. He has
kindly posted powerbasic source code for an NT Service. The link to
his site is as follows: http://www.execpc.com/~jrbock/
You will need to look in the programming section for this code.
Chris
------------------
Leave a comment:
-
Guest repliedEric wrote:
SQL Tools adds very little overhead, nowhere near 20%.
In fact, since you would have to write code to take the place
of the SQL Tools functions ("open database", etc.) it's possible
that your own "pure" ODBC code would be slower than SQL Tools.
We spent a lot of time optimizing it.
Could I lobby for a type library for SQL Tools to use in the
COM tools (Delphi, C++ Builder, VC++ and VB)?
Josh
------------------
Leave a comment:
-
Josh --
> ODBC - 100%
> ODBC-SQL Tools -???% (Would this be around 120%?)
SQL Tools adds very little overhead, nowhere near 20%. In fact, since you would have to write code to take the place of the SQL Tools functions ("open database", etc.) it's possible that your own "pure" ODBC code would be slower than SQL Tools. We spent a lot of time optimizing it.
> Have you ever used SQL Tools with C/C++?
The SQL Tools documentation is heavily weighted toward PowerBASIC, but the SQL Tools DLL itself is a 100% standard Win32 DLL that is compatible with virtually all Windows programming languages. If you are familiar with both C and PowerBASIC (differences in data types, etc.) then you should have no problem.
-- Eric
------------------
Perfect Sync Development Tools
Perfect Sync Web Site
Contact Us: mailto:[email protected][email protected]</A>
Leave a comment:
-
Guest repliedFlorent,
It is difficult choosing between the two because I have a
feeling eventually someone will come along and want to buy
the source code. You can guess where I'm going with this.
Some unknowledgeable people will not even know Powerbasic
exists. Unfortunately, these people believe "everything" is
written in C. This may put me at a disadvantage.
Troy,
I have a general question for you. How would you rate the
database access speed given the following?
My wild guesses are in parenthesis.
ODBC - 100%
ODBC-SQL Tools -???% (Would this be around 120%?)
OLE DB - ???% (Would this be around 170%?)
ADO - ????% (Would this be around 200%?)
I know these are sweeping generalizations. However, I was
just looking for a ballpark figure.
Have you ever used SQL Tools with C/C++?
Florent & Troy,
I really appreciate both of you taking time to post feedback.
Thanks,
Josh
------------------
Leave a comment:
-
I've done services in both PB, C, and C++, and while
the grunt work of string handling, etc. is easier in
PB, there are far more samples in C. As to which was
easier, for me it was C, but only because the first one
I ever tried was in PB, and I had a steep learning
curve. By the time I did one in C, I'd figured out most
of the stickiness so it went a lot smoother. I haven't
since coded another one in PB, but only because my
current employer insists on C++.
Just knowing the little bit about your project, and
owning the tools I've already paid for, I'd do it in PB
with SQL Tools. If I didn't own SQL Tools, I'd use C
because I have generic wrapper code for ODBC and
wouldn't want to convert that to PB. In other words,
it's the ODBC part that would determine which language
I used rather than the NT Service part. I find the ODBC
API intensely more complex than the NT Service API, but
that's just me. To tell you how much I hate ODBC without
SQL Tools, I use DBLIB rather than ODBC if I have to
work in C or C++. DBLIB is *way* easier than ODBC, but
of course it's now deprecated. I also think you'll find
that OLE DB performance isn't up to par with ODBC.
When I built my service frameworks in both C and C++, I
didn't have to use ATL/COM at all, so didn't have to
get bogged down with those difficulties. (I've never
coded COM with PB, C, or C++, only in VB). I just
followed the API for services, which is pretty
straight-forward. The sad part is, I'd be more than
happy to give you that source, but it's owned by my
past employer (PB Version) and current employer (C and
C++ versions).
------------------
Troy King
[email protected]
Leave a comment:
-
Hi
If you want to use OLE DB with PB then you'll have to use Philip Monteil's
very good 3rd Jazzage software at http://www.jazzagesoft.com/ or roll
your own COM access (without ATL or MFC support)
I use ODBC myself - and with PB you can either use the ODBC API
directly or use PerfectSync's SQLTools (it's had nothing but
excellent reviews) found at: http://www.perfectsync.com/
As to your question about the pros and cons of using VC++ or
PB to build services the quite short answer is as follows:
If you don't mind the bigger executables that VC++ produces
and feel comfortable using the ATL COM framework then the ATL
wizard will quickly set up a service project for you with hooks
for the different methods etc.
With PB you'll have to code it by hand. I prefer coding it by hand
and with experience I find it's often faster.
The short answer is: code it in whatever language you feel most
comfortable using.
I personally like lean and mean which means I'd code it in PB.
YMMV of course
Cheers
Florent
[This message has been edited by Florent Heyworth (edited March 21, 2001).]
Leave a comment:
-
NT Service PB or VC++
All,
I am in the process of selecting a tool to build an NT Service
which will read databases via OLE DB or ODBC. I was wondering if
anyone has built one with both PB and VC++.
I am not interested in starting or engaging in a religious battle
over which tool or language is better. My focus is on the pros and
cons of building NT Services with each tool.
Thanks,
Josh F.
------------------
[This message has been edited by Josh Forster (edited March 21, 2001).]Tags: None
Leave a comment: