Mam tabelę:
id | clientid | name |
---|---|---|
6 | 1200 | cos |
7 | 1200 | halo |
8 | 1200 | lala |
Jak zrobić by zaktualizować po kolei te wiersze? Znam tylko clientid. ID nie znam. Za to ID jest ustawiane z automatu i rosnące.
Mam tabelę:
id | clientid | name |
---|---|---|
6 | 1200 | cos |
7 | 1200 | halo |
8 | 1200 | lala |
Jak zrobić by zaktualizować po kolei te wiersze? Znam tylko clientid. ID nie znam. Za to ID jest ustawiane z automatu i rosnące.
Oj Mireczku, a co chcesz na co zmienić?
UPDATE tabela SET name="aaa" where clientid=1200 and id=6;
UPDATE tabela SET name="bbb" where clientid=1200 and id=7;
UPDATE tabela SET name="ccc" where clientid=1200 and id=8;
Jak pobrać z tabeli 6,7,8 by tu wstawić?
EDIT
Ok. Zrobiłem tak
select MIN(id) from tabela ;
select MAX(id) from tabela ;
Teraz tylko jak te wartości wyjąć z bazy za pomocą C#...
Sprecyzuj pytanie. Skąd wiesz, że tam, gdzie id=6, masz wstawić "aaa", a tam, gdzie id=7 masz wstawić "bbb"?
Mam n wierszy, które muszę zaktualizować dla danego clientid. Samo id nie jest ważne a tylko służy do rozróżniania rekordów (prawdopodobnie). Można by skasować wszystkich n wierszy z clientid a potem wstawić nowe. Ale nie wiem czy to takie fajne rozwiązanie. No i chciałbym wiedzieć jak zamiast kasowania je aktualizować.
Z tym człowiekiem nie da się dogadać... W jaki sposób chcesz zaktualizować konkretne rekordy? Pokaż na przykładzie realnych danych skoro nie potrafisz opisać.
@maszynaz, czemu nie zrobisz po prostu:
UPDATE tabela SET name="reptilianie" WHERE clientid=1200
Bo to podmieni wszystkie wiersze z tym konkretnym clientid. A to ma być coś w stylu multimapy.