|
|
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
Привет всем! Проблема - имеем таблицу с первичным ключом id , являющимся автоинкриментным полем. При добавление строк на клиенте колнка id автоматом зхаполнется новыми значениями, скажем c 1 по 10. Но возможно, сто другой user в эту таблицу вставил несколько строк с id 1 по 3. Что происходит когда вызываем SqlTableAdapter.Update(наша таблица). Adapter последовательно вставляет га сервер строки и автоматически меняет id строки клиента на то что оно получила на сервере. В нашем случае вместо первая строка с 1 заменится на 4 (это первое не занятое значение!) но 4 УЖЕ ЕСТЬ НА КЛИЕНТЕ! Получаем БАБАХ Exception и останов процесса! Как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2006, 11:13 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
вообще-то это стандартный паттерн. Автоинкремент на клиенте делаем в минус а не в плюс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2006, 21:16 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
Что значит "патерн"? Я пока вышел из положения тем что первичный ключ сделал двойным - автоинкрементое поле + ещё одно, которым я сам меняю, но не ловко за "старшего брата"! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2006, 13:49 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
+ saint Михаил Бор Я пока вышел из положения тем что первичный ключ сделал двойным - автоинкрементое поле + ещё одно, которым я сам меняю, но не ловко за "старшего брата"! корявое решение, поищите по форумам по словам: autoincrement , identity , вопрос неоднократно обсуждался Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2006, 14:07 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
Я сделал так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2006, 08:28 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
KicelЯ сделал так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. подскажите ,а как ещё можно сделать без этого Код: plaintext 1. 2. ТОлько вот у меня вроде всё настроено,но не вставляется.Кто то так делал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2010, 10:03 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
Andreas_84 Это Вы снова о вставке ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2010, 13:34 |
|
||
|
Типизир. DataSet и автоинкриментные поля - как вствлять?
|
|||
|---|---|---|---|
|
#18+
Andrey1306Andreas_84 Это Вы снова о вставке ? Да,да)) я в принципе разобрался,как это делается с DataRelation (у меня не были просто определены Update & Delete Rule),но остался один маленький вопрос(в книге его умолчали,но думаю мои подозрения верны),а именно-Вот у нас есть родительский грид и дочерний,в родительском есть ключевое автоинкрементальное поле "emp_id" а в гриде родственников есть FK поле "emp_id",Добавили мы нового сотрудника "emp_id" проставилось -1,добавили ещё одного -2...и т.д,Вопрос состоит в том что -добавляя родственников в дочерний грид,правильно ВРУЧНУЮ проставлять значения "emp_id"(в зависимости например от Position в родителе если используется BindingSource брать значение "emp_id" в текущей родительской DataRow) или же как то автоматом тоже предусмотрено?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 09:43 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=36846916&tid=1351086]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
159ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 453ms |

| 0 / 0 |
