Вниз
Скачать: CL | DM;

Клиент-сервер   Найти похожие ветки 

← →
ANB ©   (2006-09-04 12:10) [40]


> sniknik ©   (04.09.06 12:06) [39]

MS SQL при такой заливке ругается. Там нужно явно указать, что автоинкремент ты присваиваешь сам.
Уж запостил бы правильный ответ, там наверняка нужно просто пару ключевых слов в инсерт добавить.


← →
sniknik ©   (2006-09-04 12:17) [41]

> MS SQL при такой заливке ругается.
у mssql для этих делов есть параметр set identity off/on.

> Уж запостил бы правильный ответ
да? и лишится всего развлечения? и даже не узнать как можно так "заливать" что не получается?
ведь для аксеса как раз нет никаких ключевых слов (не та функциональность что у mssql) он всегда работает в режиме "разрешено на вставку".
т.е. тут захочеш, не ошибешся... но тем не менее...


← →
Anatoly Podgoretsky ©   (2006-09-04 12:30) [42]

А какой правильный ответ, если аксеса это не позволяет, кроме создания новой таблицы, заливки и последующего создания автоинкриментного поля (если Акцесс позволит задним числом создать такое поле с уже существующими данными).


← →
sniknik ©   (2006-09-04 13:34) [43]

Anatoly Podgoretsky ©   (04.09.06 12:30) [42]
> кроме создания новой таблицы, заливки и последующего создания автоинкриментного поля
уточнение, кроме создания новой таблицы с автоинкрементным полем, и последующим заполнением (но не изменением!)

короче
создаем
CREATE TABLE Table1 (ID Counter(1, 1) PRIMARY KEY, Name VarChar(30))
добавляем
INSERT INTO Table1 (ID,Name) VALUES (20, "Test")

и ничего секретного/замороченного


← →
sniknik ©   (2006-09-04 13:37) [44]

а вот изменение
UPDATE Table1 SET ID = 10 WHERE ID = 20

уже не получится, а именно это посылается при навигационных методах (Append,  :=,  Post;) похоже, потому и глюки у тех кто их использует.


← →
Anatoly Podgoretsky ©   (2006-09-04 14:28) [45]

sniknik ©   (04.09.06 13:34) [43]
Имеется в виду, что поле будет иметь старые значения, а не новые, ведь про это речь. Я не вижу другой возможности, как залить в обычное поле, не автоинкриментное, а потом изменить на автоинкриментное - но можно ли это в Акцесс не знаю и даже пробовать не хочу.


← →
Antoxa2005   (2006-09-04 17:53) [46]

Конструкция предложенная sniknik ©

> короче
> создаем
> CREATE TABLE Table1 (ID Counter(1, 1) PRIMARY KEY, Name
> VarChar(30))
> добавляем
> INSERT INTO Table1 (ID,Name) VALUES (20, "Test")
>
> и ничего секретного/замороченного

работает.
Т.е. хоть и на поле установлен автоинкремент, Access дает возможность, при явном указании, установить свои значения в поле, а если значение поля явно не указать, то Access инкрементирует его самостоятельно (большее+1).



Страницы: 1 2 вся ветка

Скачать: CL | DM;



Память: 0.53 MB
Время: 0.038 c
2-1160740414
ceval
2006-10-13 15:53
2006.10.29
отображалось в реальном времени использывания памяти


1-1158509750
MixAnOL
2006-09-17 20:15
2006.10.29
OLEVariant


3-1157081407
tolianb
2006-09-01 07:30
2006.10.29
Экспорт из данных из DBGrid в Excel


15-1160223275
Adder
2006-10-07 16:14
2006.10.29
Anatoly Podgoretsky с днём рождения!


6-1149614620
Ezorcist
2006-06-06 21:23
2006.10.29
Вопрос по NAT (на примере ICQ)




   Наверх