1
Vývoj / Re:.NET F# SQLProvider - leftOuterJoin
« Poslední příspěvek od Kit kdy Dnes v 18:28:09 »Používá se kombinace join ... into a DefaultIfEmpty().
query {
for country in dc.Dbo.Countries do
where country.IsEnabled
join city in dc.Dbo.Cities on (country.Id = city.CountryId)
sortBy country.Name
thenBy city.Name
select (country.Id, country.Name, city.Id, city.Name, city.IsCapital)
}
query {
for country in dc.Dbo.Countries do
where country.IsEnabled
leftOuterJoin city in dc.Dbo.Cities on (country.Id = city.CountryId) into cities'
for city' in cities'.DefaultIfEmpty() do
sortBy country.Name
thenBy city'.Name
select (country.Id, country.Name, city'.Id, city'.Name, city'.IsCapital)
}
System.Exception: 'unrecognised method call value(FSharp.Data.Sql.Runtime.QueryImplementation+SqlQueryable`1[FSharp.Data.Sql.Common.SqlEntity]).GroupJoin(value(FSharp.Data.Sql.Runtime.QueryImplementation+SqlQueryable`1[FSharp.Data.Sql.Common.SqlEntity]), country => country.GetColumn("Id"), city => city.GetColumn("CountryId"), (country, cities') => new AnonymousObject`2(Item1 = country, Item2 = cities'.DefaultIfEmpty()))'
Bavíme sa tu v rámci nejakého kontextu, teda kategórie jazykov, do ktorej Rust a C++ patria. V tomto zmysle C++ a JavaScript nepatria do toho istého kontextu.Před 30 lety byste webovou aplikaci (tenkrát pomocí CGI) psal nejspíš v C nebo C++. Protože moc jiných možností nebylo. Dneska tu samou aplikaci napíšete třeba v JavaScriptu. Takže jsou to alternativy. C/C++ v některých použitích nahradilo nejdřív PHP, pak se přidala Java (a trochu třeba i Python), a ty dnes v těchto případech částečně nahrazuje JavaScript. Přestože jsou to při určitém úhlu pohledu dost odlišné jazyky a každý se hodí na něco jiného.
Takže áno, aj v C++ aj v JavaScripte sa dá programovať. Každý z tých jazykov je ale na úplne iné použitie a v rámci neho môže byť vhodnejší ako ten druhý jazyk.
Rust a C++ sa v rámci svojej kategórie a toho, čo poskytujú, čiastočne prekrývajú. Takže je jasné, že sú do istej miery zastupiteľné. To predsa nikto nespochybňuje. Ale každý z nich má niečo, čo ten druhý nemá a situácia, že by jeden z nich získal všetko, čo má ten druhý a vytlačil ho, nikdy nenastane.Jenže o vytlačování, ve smyslu že se C++ úplně přestane používat, tu pořád píšete jenom vy. Všichni ostatní píšou „Rust (částečně) nahazuje C++“ a myslí tím, že některé aplikace, které by se při neexistenci Rustu psaly v C++, se dnes píšou v Rustu.
Vazne nevim co resis ... to ses tak neschopnej, ze neumis aktivovat widle?
Zalez do diry, a uz nikdy z ni nevylejzej ... tenhle naprosto nepravdivej blabol byl milionkrat vyvracen. A to i rozhodnutimi soudu.Když už píšete úplné nesmysly nemohl byste psát aspoň slušně? OEM licence (vázané na konkrétní hardware) jsou platné stále, nikdo to nikdy nevyvrátil a žádné rozhodnutí soudu na to není.
Z hlediska uzivatele je to uplne jedno, jeho se to ujednani vubec netykaKoncový uživatel má v licenci napsáno, že smí licenci používat pouze se zařízením, se kterým byla zakoupena. Což překvapivě znamená, že smí licenci používat pouze se zařízením, se kterým byla zakoupena.
Uzivatel tu licenci pochopitelne muze prenaset zcela libovolne mezi pocitaci, stejne jako ji muze odprodat. A to ze zakona.Přenášet ji mezi počítači nemůže, protože součástí licenčních podmínek je, že musí být používána na počítači, se kterým byla zakoupena. Je to úplně to samé, jak když si student pořídí studentskou licenci, nemůže ji pak používat podnikatel. Nebo když si pořídíte licenci pro použití na 3 počítačích, nemůžete ji používat na 10 počítačích. Pořád ta licence má nějaké podmínky použití, a licence je platná pouze za jejich dodržení.