bltoolkit icon indicating copy to clipboard operation
bltoolkit copied to clipboard

Ambiguous field in join update

Open kekekeks opened this issue 11 years ago • 3 comments

class A
{
     public int Id{get;set;}
     public int UserId {get; set;}
     public string Foo {get; set;
}

class B
{
     public int Id{get;set;}
     public int UserId {get; set;}
     public string Bar {get; set;
}

var q = from a in db.GetTable<A>()
            from b in db.GetTable<B>().Where(x => x.Bar == a.Foo)
            select new { a, b };
q.Update(db.GetTable<A>(), old => new A { UserId = old.b.UserId });


Generated query

UPDATE  `A` `x1` INNER JOIN `B` `x` ON `x`.`Bar` = `x1`.`Foo`
SET
    `UserId` = `x`.`UserId`
An unhandled exception of type 'BLToolkit.Data.DataException' occurred in BLToolkit.4.dll

Additional information: Column 'UserId' in field list is ambiguous

kekekeks avatar Mar 18 '14 14:03 kekekeks

What data provider do you use?

igor-tkachev avatar Mar 31 '14 02:03 igor-tkachev

MySql

kekekeks avatar Mar 31 '14 14:03 kekekeks

Same problem

xpoft avatar May 07 '14 10:05 xpoft