Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] Replace - Zmieniający się identyfikator
starach
post
Post #1





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Witam. Mam drobny problem z identyfikatorem auto_increment.
Cytat
CREATE TABLE `session` (
`s_id` int(11) NOT NULL auto_increment,
`s_phpsid` varchar(255) NOT NULL,
`s_data` text NOT NULL,
`s_start` datetime NOT NULL,
`s_update` datetime NOT NULL,
PRIMARY KEY (`s_id`),
UNIQUE KEY `s_phpsid` (`s_phpsid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Wykonując zapytanie
  1. REPLACE INTO `session`(s_phpsid,s_data,s_start,s_update) VALUES('a20e36dd6654df5ea30ca626635fb141', 'a:0:{}', '2008-07-04 20:07:35', NOW())
Nawet jeśli tylko podmienia wartości to i tak podnosi s_id o jeden.
Co zrobić aby przy podmianie wpisywał zawsze tą samą wartość kolumny s_id ?

Ten post edytował orglee 4.07.2008, 19:05:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
nospor: Czy ON DUPLICATE jest standardem SQL czy tylko działa na MySQL'u ?

nie wiem, nie kojarze by bylo np. w oraclu, ale duzo oracla nie uzywalem to moze przegapilem

Cytat
Kicok: Jest jakaś szczególna różnica między VARCHAR(32) i CHAR(32) ?
pole typu char(32) zawsze bedzie zajmowalo 32 znaki, niezaleznie czy jest tam napis 'ala' czy 'ala ma kota i inne znaki do 32'.
varchar(32) bedzie zajmowalo tyle bajtow ile ma znakow tekst w polu.

Pamietaj ze jesli uzywasz char w tabeli, gdzie jest tez varchar, to char i tak bedzie traktowane jako varchar.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 10:20