Seek method, table-direct, and sql server2005

  • Thread starter Thread starter Manuel Lopez
  • Start date Start date
M

Manuel Lopez

From what I've read in the docs, ado.net currently supports opening sql
server ce tables in table-direct mode and performing Seek operations on them
(using SqlCeDataReader), but not on the full-blown sql server. Is this
(will this be) still true with ado.net 2.0 & sql server 2005?
 
Manuel said:
From what I've read in the docs, ado.net currently supports opening sql
server ce tables in table-direct mode and performing Seek operations on
them (using SqlCeDataReader), but not on the full-blown sql server. Is
this (will this be) still true with ado.net 2.0 & sql server 2005?

I looked the MSDN for the VS 2005 beta, and there is no Seek method
for the SqlDataReader.
 
I'm doing a CF2.0, SQLMobile app right now and using Seek. It *is*
supported and works well.
The documentation is probably just not up to date yet.
 
Darren said:
I'm doing a CF2.0, SQLMobile app right now and using Seek. It *is*
supported and works well.
The documentation is probably just not up to date yet.

And you use SqlDataReader and not SqlCeDataReader with SQL Mobile? (The
original poster asked for Seek in SqlDataReader when talking to
SQL2005 non-Mobile.
 
apologies - read the orig post too quickly and assumed he was asking about
SQLMobile.
 
I don't mind using SqlCeDataReader, but I assume there's no way to get it to
work with sql server (except the ce version). On the other hand, perhaps
that's wrong? are there really two diffferent file formats for sql server,
ce and non-ce? if not, couldn't the ce version conceivably be used against
regular sql server?
 
Manuel said:
I don't mind using SqlCeDataReader, but I assume there's no way to get
it to work with sql server (except the ce version). On the other hand,
perhaps that's wrong? are there really two diffferent file formats for
sql server, ce and non-ce? if not, couldn't the ce version conceivably
be used against regular sql server?

I don't know much about SQL Server CE/Mobile, but as I understood it from
a discussion about the OLE DB provider for SQL Server CE, that provider
really pokes around in the files - that is SQL Server CE is not a server
at all.

With the real SQL Server you communicate over some network protocol, and
the data provider never directly accesses the files. From this reason,
a Seek method makes less sense with SQL Server non-CE.

There are also interesting syntax differences between the two. For instance
in the real SQL Server you cannot use ALTER TABLE to add the IDENTITY
property to a column. This feature which is often asked for is available
in SQL Server CE!
 
The fact that the ce provider accesses the sql server files directly, rather
than use a network protocol, is actually a plus for me, since I use sql
server only as a local database (desktop database). As I understand it,
you're saying the file formats are the same, so then conceivably it could be
made to work against sql server (though there are probably other obstacles,
and perhaps the eula prevents trying).
 
Manuel said:
The fact that the ce provider accesses the sql server files directly,
rather than use a network protocol, is actually a plus for me, since I
use sql server only as a local database (desktop database). As I
understand it, you're saying the file formats are the same, so then
conceivably it could be made to work against sql server (though there
are probably other obstacles, and perhaps the eula prevents trying).

Did I say the file formats are the same? In such case I take that back.
I don't know anything about the file format of SQL Server CE.

However, I would be very much suprised if they have the same format, since
the databases are accessed in so different ways. The data files in real
SQL Server are accessed by one single executable: sqlsrvr.exe, whereas
several processes could access an SQL Server CE database.

Essentially it seems to be that the two databases are in fact two quite
different architectures, but with an (almost common) interface in T-SQL.
 
You hadn't said it, but I wrongly inferred it from your remarks. I'll see
if I can find something from Microsoft on this; but I take it the ce version
is like sql server in the sense of supporting the same query language, but
in other respects it's likely to be an entirely different database.
 
CE is likely closer to Jet internally than to SQL Server. Most of the
original Jet programmers moved over to the SQL team to develop the
product. That being said, I don't actually know much about the
internals of CE vis a vis SQLS other than that factoid :-)

--Mary
 
Back
Top