Re: OleDb DataFactory bug. Watch out.



Hi Nicholas,
re my previous reply.
Had the cuppa coffee.
decided to test for factory type.(I am using DbProviderFactories)
If System.Data.OleDb.OleDbFactory then I cast the sensitive DbParameter as
an OleDbParameter and set its OleDbType to VarChar.
Otherwise just set the DbType to String.
regards
Bob


"Nicholas Paldino [.NET/C# MVP]" <mvp@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message news:Oqd3OlcCHHA.3604@xxxxxxxxxxxxxxxxxxxxxxx
Bob,

I almost would NEVER use the OleDbFactory class to generate commands
for
me. SqlFactory is one thing, since it is tailored specifically for Sql
Server. However, OleDb has to deal with a plethora of different providers
(the same thing applies for the OdbcFactory as well).

Are you writing a general-purpose tool, or are you writing something
more specific?

Hope this helps.

--
- Nicholas Paldino [.NET/C# MVP]
- mvp@xxxxxxxxxxxxxxxxxxxxxxxxxxx

"Bob" <bob@xxxxxxxxxxx> wrote in message
news:O72lg8bCHHA.3228@xxxxxxxxxxxxxxxxxxxxxxx
Hi,
Using the OleDb factory.
Asked it to insert 4K records into a SQLAnywhere database table.
Runs out of steam at record 244 and starts writing corrupted versions
of
243 primary index column until at 248 it hits a variation it has already
written and fails with a non-unique primary index error.

Use a hand rolled OleDb command and the data is written OK. Likewise the
SQL
Factory writes the same data to an SQLServer OK.

It is not a race condition as you can step through the failing iteration
and
it still fails.
So...
Stay away from the OleDb Data factory until it is repaired.
Bob








.



Relevant Pages

  • Re: OleDb contra SqlClient
    ... >> kostet das mit ner Factory spezifisch zu lösen, ... > nur wissen, was an OleDB so schlecht ist, und jetzt unterstellst du ihm ... > Nette Bugs hier und da. ... > Keyboard Error or No Keyboard Present ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: OleDb contra SqlClient
    ... >> kostet das mit ner Factory spezifisch zu lösen, ... > nur wissen, was an OleDB so schlecht ist, und jetzt unterstellst du ihm ... > Nette Bugs hier und da. ... > Keyboard Error or No Keyboard Present ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: OleDb DataFactory bug. Watch out.
    ... The app has to sit on top of either an SQlserver db or an SQLAnywhere db. ... Narrowed it down in fact not to the factory, ... only set its dbType property to String it gave the corruption. ... Using the OleDb factory. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Oledb* Or SQL* classes
    ... If you used OleDb originally, ... situation where you were using a non-native provider or you'd have the ... A factory will allow you to specify what's what and create objects ... procs the same way sql server does and it has different datatypes. ...
    (microsoft.public.dotnet.framework.adonet)
  • OleDb DataFactory bug. Watch out.
    ... written and fails with a non-unique primary index error. ... Use a hand rolled OleDb command and the data is written OK. ... Factory writes the same data to an SQLServer OK. ...
    (microsoft.public.dotnet.languages.csharp)