Hei!
Missähän vika kun Datagridview ei näytä ä:llä ja ö:llä alkavia oikeassa järjestyksessä vaan ä alkuiset nimet ovat a:lla alkavien joukossa?
myCommand = New OleDbCommand("SELECT nimi FROM Asiakkaat ORDER BY nimi ;", myConnection)
Dim Adapter As New OleDbDataAdapter(myCommand)
Adapter.Fill(myDataset, "Asiakkaat")
DataGridView1.DataSource = myDataset.Tables("Asiakkaat")
Mikä tietokanta? MySQL?
Tietokannan/kentän/kyselyn collation (en tunne oikeaoppista suomenkielistä termiä) vaikuttaa järjestykseen. latin1_swedish_ci collation (Swedish case insensitive) toiminee parhaiten sinulle. Jos et voi muuttaa taulun määrittelyä, kokeile
SELECT nimi FROM Asiakkaat ORDER BY nimi COLLATE latin1_swedish_ci;
Mikä tietokanta on kyseessä?
Vaikuttaisi siltä että kannan Collation asetus ei tue skandinaavisia merkkejä.
Jos käytät SQL server ympäristöä niin kokeile seuraavaa lausetta.
SELECT nimi FROM Asiakkaat ORDER BY (nimi collate Finnish_Swedish_CI_AS)
Näin ainakin SQL server 2005-versiolla.
edit... chiman ehtikin ensin
Sori, tietokanta jäi pois eli se on Access.
Ei näytä toimivan ylläolevat ehdotukset Access tietokannan kanssa.
Onkohan muita ehdotuksia?
Móro Jokkeri!
Tsekkaa DataSet-ominaisuuksista, että Locale asetus on: suomi(SUOMI) ja Formin asetuksista, että Language asetus on: (Oletusarvo) & Localizable asetus on: False
Moi!
Foemilla on kyseiset asetukset mutta miten laitan koodiin DataSer ominaisuuten Suomi asetukset?
myDataset.Locale=?
T. Jokkeri
Moro taas Jokkeri!
jutska toimii näin...
Imports System.Globalization '... myDataset.Locale = New CultureInfo("fi-FI") 'ootko muuten asennellu NET.Framework 3.5 SP1 kielituki-paketin
Moi taas!
Eipä pelaa vieläkään vaikka kielituki paketti on asennettu ja laitettu ylläolevat rivit. Aika mysteeri on.
T. Jokkeri
Access:n asetuksista saa vaihdettua sortti järjestyksen. Tools --> Options --> General --> New Database Sort Order. Tuonne kun määrittelet Swedish/finnish niin UUSISSA access kannoissa tuo sort järjestys menee oikein.
Toki voit myös yrittää käyttää DataView:iä ja määritellä siihen sortin:
Dim myView as DataView myView = ds.Tables("Asiakkaat").DefaultView myView.Sort = "Nimi"
Kiitos, nyt pelaa kun käyttää DataView:iä ja määrittää siihen sortin.
T. Jokkeri
Aihe on jo aika vanha, joten et voi enää vastata siihen.