What is the difference between OLE DB and ODBC in relation to a Crystal Reports datasource connection?

0

1

I'm relatively new to Crystal Reports and I'm testing out various report viewers. When I made my report in Crystal reports, apparently I used an OLE DB connection to the data source, in this case SQL Server 2008 R2. I was watching a tutorial series from Lynda and then Infinite Skills to get started. I'm testing the report viewers on a Windows 7 VM (Pro 64 bit, SP1). I developed the report on a different Windows 7 machine (Ultimate N, 64 bit, SP1).

According to one of the devs of one of the report viewers I was testing, it seems that the built in OLE DB connection is failing or "missing drivers".

I don't see any downloadable drivers like with PC hardware, and it seems that the two terms, while supposed to be different, are used interchangeably in practice.

Is there a practical difference in the access methodologies when used with Crystal Reports? Should I just switch to ODBC and be done with it?

Update 1

I've been continuing to work on this, and it appears there is more than 1 OLE DB driver in Crystal Reports. In using a different OLE DB driver, the 3rd party reports are able to work, but there is a popup from the Crystal Engine to enter in credentials. In using one of the report viewers, it seems clear that the credentials for the datasource connection are not being embedded into the report.

enter image description here

YetAnotherRandomUser

Posted 2017-03-31T12:24:48.113

Reputation: 1 494

I have a solution to my problem, but not my question. I don't know the whys of any of this, and that's what my question pertained to. – YetAnotherRandomUser – 2017-03-31T14:23:09.483

I think the information I am looking for is in between the lines of what you just said. But I'm not interpolating it correctly. From what I can tell, circa late 90s, Microsoft across the board switched from ODBC to OLE DB because OLE DB was the next new thing. It seems like you're saying that MS SQL Server does not support OLE DB, so Crystal Reports uses a special driver that bridges the two protocols/providers. Which would then make me want to go native ODBC for my report, instead of any transinterpolating drivers to muck things up. "Transinterpolating" being a technical term. – YetAnotherRandomUser – 2017-03-31T14:41:10.660

Answers

0

When possible, use the Native Client as that will provide the best performance, compatibility, and features. You're being asked to enter credentials because you've used multiple protocols to connect to the same database.

Decide on what driver you want to use and update your datasource.

As to the difference between OLE DB vs ODBC.

Source:

OLE DB (Object Linking and Embedding Database) is designed to provide access to all types of data in an OLE Component Object Model (COM) environment. OLE DB includes the SQL functionality defined in ODBC but also defines interfaces suitable for gaining access to data other than SQL data.

Sun

Posted 2017-03-31T12:24:48.113

Reputation: 5 198