2013-06-25 1 views
0

Я читал несколько других потоков, которые указывают на эту статьюFoxPro SQL - Хотите вернуться строк на основе определенных номеров строк - OLEDB C# ASP.NET

http://msdn.microsoft.com/en-us/library/y7tz3hhk%28v=vs.80%29.aspx

Однако пример не поддается к тому, что я хочу очень хорошо. Я посмотрел на несколько других операторов SQL, и я не уверен, что правильно их использую. Я подключения к файлу DBF через C# с OleDbConnection и заселение OleDbDataAdapter

Согласовать
var sql = "select *, recNo() as rownum from '" + Uri.UnescapeDataString(connString) 
+ "' WHERE (rownum > " + lowerLimit + ") AND (rownum > " + upperLimit + ")"; 

Я постоянно получаю сообщение об ошибке, говорящее, что ROWNUM не существует. Я попытался изменить rownum на CAPS, без разницы.

SQL: Column 'ROWNUM' is not found. 

В общем, что я пытаюсь выполнить это вернуть все строки, основываясь на том, что строка это в. Изменение файла DBF это не вариант, и я хотел бы сохранить на память, так что просто добавление все в гигантскую таблицу не является оплошным вариантом. (600,000+ записей)

ответ

2

Попробуйте использовать Recno() в предложении WHERE: WHERE RECNO()> вар

Другим вариантом было бы использовать вложенные запросы, поскольку ROWNUM еще не существует.

+0

Возможно, это было сделано, я скоро отправлю сообщение! –

+0

Хм, странно ... нет, похоже, не работает, хотя мое сообщение об ошибке исчезло. Он возвращает на 10 000 меньше записей, чем в базе данных? запись DBF кол-во: 702240 запись ниже: 20000 запись верхний: 30000 –

+0

пренебрежение моим последним сообщением, у меня были границы пределов неправильные (шляпа для верхнего предела сталкивалась с неправильным способом) Спасибо! –

 Смежные вопросы

  • Нет связанных вопросов^_^