Jump to content
php.lv forumi

id dubultnieks


Robis

Recommended Posts

Sveiki!

Pienjemsim man MySQL tabula ir divi lauki:

`id` un `id_num`

 

Respektivi `id` ir pirmarais autoincreament key!

 

Bet es velos lai pie jaunu ierakstu inserteshanas, `id_num` pieshkjiras gan jaunaa `id` vertiba + vel pieliek kadu stringu, piemeram '_bz'!

 

To ir iespejams dabut gatavu?

Link to comment
Share on other sites

Var iegūt pēdējā pievienotā ieraksta Id vērtību ar mysql_insert_id, taču Tev laikam tāds variants neder, jo vajag vienā querijā. Ja der ar diviem, tad pirmajā to lauciņu atstāj tukšu, un otrajā ar update nomaini vērtību ar mysql_insert_id iegūto.

Varbūt arī ir kāda SQL f-cija, ātri pārlaižot acis pār manuāli nepamanīju...

Link to comment
Share on other sites

Nu atradu funkciju LAST_INSERT_ID() - ta nodereja, bet pilniba problemu neizdevas atrisinat, jo nezinu, ka var:

UPDATE `table` SET `kautkas`='shis_kas_te jau ir' + kaut kas jauns

 

Respektivi taja lauka nevis nomainit ar jauno, bet pielikt klat jaunu! Ir tada iespeja?

Link to comment
Share on other sites

last_insert_id() atgriež tik pagājušās darbības insert'otā ieraksta id, ja.

un par to konkatenēšanu - protams ka tāda iespēja ir! pats tak korektu update teikumu uzrakstīji.

14001[/snapback]

 

un kā ir ar last_insert_id pie lielām slodzēm? resp - ja nospiež divi cilvēki vienlaicīgi podziņas un sanāk, ka pieprasījumi izpildās pamīšus? varētu būt visnotaļ interesanti :D

Link to comment
Share on other sites

last_insert_id ir katrai konekcijai savs. ja neizmanto persistent connections tad katram skriptam buus sava konekcija un ja arii kaads cits skripts pa vidu paspees kautko iebaazt - id no taa nemainiisies (katram buus savs last_insert_id).

Link to comment
Share on other sites

×
×
  • Create New...