У меня есть назначение, которое будет вставлять записи в таблицу foxpro. Существует столбец «submitid», но это не первичный ключ. Мне нужно будет ввести число с шагом max (submitid) + 1. Что делать, если два пользователя одновременно отправляют один и тот же запрос. Будет ли у него такой же дублированный submitid?Лучший способ вставить таблицу foxpro 6 на C#
1
A
ответ
2
С одновременными пользователями вы можете в конечном итоге дублировать идентификатор. Один из способов, которым я видел это в FoxPro, - это таблица для отслеживания текущего идентификатора, как и последовательность в postgres, и отработка этого, а не использование Max. Будет также включать блокировку таблицы перед извлечением и увеличением значения, если вы хотите быть уверенным.
4
Вы можете использовать OLEDB CommandText, чтобы выполнить это, используя команды и функции VFP, чтобы получить следующий номер и вставить запись.
Ниже приведено псевдо, но вы должны получить эту идею. «EXECS» - это функция VFP, которая позволяет выполнять собственные команды и функции VFP.
oCommand.CommandText = "EXECS([USE MyTable AGAIN SHARED IN 0] + chr(13) + [FLOCK("MyTable")] + chr(13) + ["get number"] + chr(13) + [INSERT INTO MyTable (col1, col2) VALUES (nextid, othervalue) ])"
Смежные вопросы
- 1. Лучший способ обновить/вставить в таблицу на основе удаленной таблицы
- 2. Лучший способ вставить списки?
- 3. Таблица FoxPro DBF в таблицу MySQL C#
- 4. ВСТАВИТЬ В FOXPRO
- 5. Переименовать таблицу Visual FoxPro из приложения C#
- 6. Лучший способ разработать таблицу на основе бронирования
- 7. Лучший способ SQL вставить запрос
- 8. Лучший способ вставить новое значение
- 9. Лучший способ переименовать таблицу SQL?
- 10. JDBC: лучший способ обновить таблицу?
- 11. MySQL, лучший способ вставить 1000 строк
- 12. Wix Bootstrapper - Лучший способ обновить/установить базу данных Visual FoxPro
- 13. Лучший способ вставить несколько строк в mysql с помощью C#?
- 14. Как удалить таблицу foxpro db?
- 15. Лучший способ вставить все комбинации входных элементов
- 16. Лучший способ сделать двухмерную таблицу в Граалей
- 17. Drupal 6: лучший способ обновления jQuery?
- 18. Вставьте таблицу данных VB.net в таблицу Visual Foxpro
- 19. C#: Лучший способ вставить CSS в экземпляр MSHTML?
- 20. Лучший способ вставить 15 000 записей на сервер sql 2012?
- 21. Лучший способ построить многоязычный сайт Drupal 6?
- 22. Компилятор: какой лучший способ заполнить таблицу символов?
- 23. Как вставить в DBF файл (Foxpro)
- 24. Получить таблицу для подсчитаны номера, лучший способ
- 25. Прочитать таблицу Foxpro, используемую другим приложением
- 26. Android: Лучший способ вставить клавиатуру в игру
- 27. Лучший способ загрузить таблицу mysql с помощью C#?
- 28. Это лучший способ создать эту таблицу? (скрипка)
- 29. Запрос на 6 таблиц, есть ли лучший способ сделать это?
- 30. Lua Вставить таблицу в таблицу
что CHR (13) + [ "получить номер"] + CHR (13) – RoyT
КПЧ (13) является carrige возвращение. «Получить номер» является владельцем места для кода, который фактически получает следующий номер. Я должен был поставить SELECT max (myID) + 1 AS maxid FROM MyTable INTO CURSOR NextNo + CHR (13) + nNextID = NextNo.maxid или что-то подобное, чтобы получить фактическое следующее число. Но сейчас я не прямо перед FoxPro и не могу придумать одну команду, которая получит следующий номер. Таким образом, вышеприведенное должно работать, и nNextID может использоваться в инструкции Insert. – Jerry