Я успешно "запрашиваю" данные в базе данных Sql Server CE с помощью TableDirect CommandType благодаря подсказке ctacke. (Увеличение производительности вполне реально.) Я умею делать запросы, используя индексные имена.
(Я создаю столбец с помощью «Id int IDENTITY (1,1) PRIMARY KEY». Я вижу сумасшедшее имя индекса, которое генерирует Sql Server CE, но я не уверен, что это лучший способ его «использовать»). )
Кроме того, я видел эту заметку в документах MSDN (http://technet.microsoft.com/en-us/library/ms173393%28SQL.100%29.aspx):
"SQL Server Compact 3.5 может использовать индексы для принудительного применения ограничений PRIMARY KEY и UNIQUE. Мы рекомендуем не полагаться на это поведение и не пытаться изменять какие-либо индексы, созданные как часть ограничения."
Каков наилучший способ получения элементов (для обновления) на основе первичного ключа?
UPDATE:
Я обнаружил, что могу присвоить первичному ключу собственное имя, например:
CREATE TABLE TEST2 (Id int ОГРАНИЧЕННЫЙ КЛЮЧ PKID ПЕРВИЧНЫЙ КЛЮЧ)
Так что тогда я мог бы использовать PKID в качестве индексного имени ... почему бы мне не «полагаться на это поведение»?