Интересно, может ли кто-нибудь помочь мне перевести запрос MySQL на
(Db) оператор LINQ.
Я сделал тестовый пример того, что я хочу сделать, поэтому данные и структура
отличается от того, что я действительно хочу сделать, но это просто значит получить его
рабочий.
В базе данных MySQL у меня есть эта таблица:
CREATE TABLE `mytable1`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`number` int(11) NOT NULL,
`name` varchar(20) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
Это содержание
id number name
1 10 aaa
2 20 bbb
3 25 cccc
4 30 ddd
5 35 eee
Я использую DBLinq в C # для подключения к этой таблице.
В программе на C # у меня также есть такой список:
List<myDataFields> myNewData = new List<myDataFields>();
С
public class myDataFields
{
public int number { get; set; }
public string name { get; set; }
}
Содержание списка:
number name
10 firstName
20 secondName
30 ThirdName
Если бы содержимое списка было бы таблицей в mysql (table2), я мог бы
просто обновите table1 с этим запросом:
update mytable1,mytable2 set mytable1.name=mytable2.name where
mytable1.number=mytable2.number;
(в действительности мне нужно сопоставить два столбца, чтобы быть ключом)
Результат будет
id number name
1 10 firstName
2 20 secondName
3 25 cccc
4 30 ThirdName
5 35 eee
Но как я могу обновить table1, используя DBLinq и List в c #?