import Ġorg . junit . Test Ċ import Ġorg . kt orm . database . Database Ċ import Ġorg . kt orm . dsl . eq Ċ import Ġorg . kt orm . dsl . from Ċ import Ġorg . kt orm . dsl . select Ċ import Ġorg . kt orm . entity .* Ċ import Ġorg . kt orm . schema . Table Ċ import Ġorg . kt orm . schema . int Ċ import Ġorg . kt orm . schema . varchar Ċ Ċ interface ĠI ds Ġ: ĠEntity < Ids > Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ: ĠEntity . Factory < Ids >() ĊĠĠĠ Ġval Ġid : ĠInt ĊĠĠĠ Ġvar Ġname : ĠString Ċ } Ċ Ċ object ĠId ss Ġ: ĠTable < Ids >(" ids ") Ġ{ ĊĠĠĠ Ġval Ġid Ġ= Ġint (" id "). primaryKey (). bind To Ġ{ Ġit . id Ġ} ĊĠĠĠ Ġval Ġname Ġ= Ġvarchar (" name "). bind To Ġ{ Ġit . name Ġ} Ċ } Ċ Ċ val ĠDatabase . id ss Ġget () Ġ= Ġthis . sequence Of ( Id ss ) Ċ Ċ class ĠTest SQL Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Merge () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdatabase Ġ= ĠDatabase . connect (" jdbc : mysql :// localhost : 3 3 0 6 / sample db ", Ġuser Ġ= Ġ" root ", Ġpassword Ġ= Ġ" root ") ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġdatabase . id ss ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( i . name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln ( database . id ss . count ()) ĊĠĠĠĠĠĠĠ Ġdatabase . id ss . add ( Ids Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" test 2 3 3 " ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Update () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdatabase Ġ= ĠDatabase . connect (" jdbc : mysql :// localhost : 3 3 0 6 / sample db ", Ġuser Ġ= Ġ" root ", Ġpassword Ġ= Ġ" root ") ĊĠĠĠĠĠĠĠ Ġval Ġi Ġ= Ġdatabase . id ss . find Ġ{ Ġit . id Ġeq Ġ 2 Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( Ġi Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġi . name Ġ= Ġ" changed " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġi . flush Changes () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }