Chirurgia endoscopică a hipofizei
"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală. Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale. www.neurohope.ro |
SQL server - nvarchar - caractere nerecunoscute ș Ș ț T
#1
Posted 31 August 2014 - 12:10
Daca poate cineva sa ma ajute, sunt cam noob in tsql, exista vreo solutie pentru putea găsi la cautare caracterele Ș ș Ț ț ?
atasez un mic exemplu care descrie mai bine ce caut: ==================================== /*rulati query-ul de 2 ori, prima data pina la semn, a doua oara full*/ /*in parametrul @nstring se pot testa diverse caractere. Eu le-am pus pe cele care dau probleme diverse.*/ /*iar in parametrul i se introduce un caracter cu diacritice pentru a vedea ce returneaza cautarea in coloana respectiva*/ /*se va putea vedea ca Ș ș Ț ț se returneaza toate la cautarea unuia dintre ele, deoarece in fapt query-ul returneaza toate rezultatele care convertite dau la fel: Ș = � ; ș = � ; Ț = � ; si ț = �; iar � = unicode unknown character*/ DECLARE @nstring NVARCHAR(100) DECLARE @position int DECLARE @i nvarchar(1) SET @nstring = N'ȘșȚțSsTtĂăÎîAaIi�' SET @position = 1 SET @i =NCHAR(65533) --puteti incerca toate valorile pe care vi le da tabelul la prima executie DECLARE @CharList TABLE ( Position INT, UnicodeChar NVARCHAR(1), UnicodeValue INT ) --de remarcat ca datalenght vede dublu numarul de caractere WHILE @position <= DATALENGTH(@nstring) BEGIN INSERT @CharList SELECT @position as Position , CONVERT(nchar(1), SUBSTRING(@nstring, @position, 1)) as UnicodeChar , UNICODE(SUBSTRING(@nstring, @position, 1)) as UnicodeValue SET @position = @position + 1 END SELECT * FROM @CharList --executati query-ul prima data doar pina aici where UnicodeChar like @i --dupa care executati full --print nchar(65533) ============================== |
#2
Posted 31 August 2014 - 12:28
#3
Posted 31 August 2014 - 12:55
neagu_laurentiu, on 31 august 2014 - 12:28, said:
De remarcat faptul ca folosesti o functie si nu stii ce face. Pai, spune-mi tu. Sunt deschis la noi cunostinte. Oricum, ea e acolo doar pentru ca sa dea un numar de rinduri, dilema principala din exemplul pe care l-am dat e cea cu cautarea dupa caracterele alea. Aceeasi cautare da rezultate corecte daca se cauta ĂăÎî etc... Doar Ș ș Ț ț sunt problema neagu_laurentiu, on 31 august 2014 - 12:28, said:
De remarcat faptul ca folosesti o functie si nu stii ce face. /*rulati query-ul de 2 ori, prima data pina la semn, a doua oara full*/ /*in parametrul @nstring se pot testa diverse caractere. Eu le-am pus pe cele care dau probleme diverse.*/ /*iar in parametrul i se introduce un caracter cu diacritice pentru a vedea ce returneaza cautarea in coloana respectiva*/ /*se va putea vedea ca Ș ș Ț ț se returneaza toate la cautarea unuia dintre ele, deoarece in fapt query-ul returneaza toate rezultatele care convertite dau la fel: Ș = � ; ș = � ; Ț = � ; si ț = �; iar � = unicode unknown character*/ DECLARE @nstring NVARCHAR(100) DECLARE @position int DECLARE @i nvarchar(1) SET @nstring = N'ȘșȚțSsTtĂăÎîAaIi�' SET @position = 1 SET @i =NCHAR(65533) --puteti incerca toate valorile pe care vi le da tabelul la prima executie DECLARE @CharList TABLE ( Position INT, UnicodeChar NVARCHAR(1), UnicodeValue INT ) WHILE @position <= len(@nstring) BEGIN INSERT @CharList SELECT @position as Position , CONVERT(nchar(1), SUBSTRING(@nstring, @position, 1)) as UnicodeChar , UNICODE(SUBSTRING(@nstring, @position, 1)) as UnicodeValue SET @position = @position + 1 END SELECT * FROM @CharList --executati query-ul prima data doar pina aici where UnicodeChar like @i --dupa care executati full --print nchar(65533) multumit? |
#4
Posted 31 August 2014 - 13:13
Vezi daca citesti documentatia, ajuta. Tot asa citeste si despre COLLATE si pune caracterele in cauza bine. Si totul va decurge cum te astepti.
Edited by neagu_laurentiu, 31 August 2014 - 13:13. |
#5
Posted 31 August 2014 - 13:21
neagu_laurentiu, on 31 august 2014 - 13:13, said:
Vezi daca citesti documentatia, ajuta. Tot asa citeste si despre COLLATE si pune caracterele in cauza bine. Si totul va decurge cum te astepti. La fel de bine puteai sa ma trimiti sa caut pe net... Numai ca eu tot caut pe net de citeva zile bune, si n-am gasit nimic care sa rezolve problema. Romanii sunt cam slabuți la capitolul baze de date, iar strainii nu-și bat capul cu litera ș... Collate nu are nicio treaba cu ce zic eu. Nvarchar stocheaza caractere unicode, pentru asta a fost introdus, si o face foarte bine. In tabele am caracterele afisate perfect, doar ca nu stie sa caute cum trebuie: cauți șarpe si îți găasește arpe.... |
#6
Posted 31 August 2014 - 13:41
Tu vinzi castraveti la gradinar ?!
Ia pune Collation pe baza sub care executi codul pe Romanian_100_CS_AS. Cum merge ? sorin503, on 31 august 2014 - 13:21, said:
Romanii sunt cam slabuți la capitolul baze de date Edited by neagu_laurentiu, 31 August 2014 - 13:41. |
#7
Posted 31 August 2014 - 13:48
#8
Posted 31 August 2014 - 13:50
Nu. Nu te ajuta cu nimic ca ti-am spus direct (mi-am incalcat un principiu). Maine ai uitat iar cand ai o alta problema iar o sa astepti. Scopul forumului e sa te puna pe directie dar tu sa descoperi si sa-ti ramana pe viata. Exact ca in povestea cu pescuitul si furnizatul de peste.
Edited by neagu_laurentiu, 31 August 2014 - 13:51. |
#9
Posted 31 August 2014 - 17:31
neagu_laurentiu, on 31 august 2014 - 13:41, said:
Tu vinzi castraveti la gradinar ?! Ia pune Collation pe baza sub care executi codul pe Romanian_100_CS_AS. Cum merge ? Esti si in masura sa faci calificari... Sunt noob in tsql, dar asta nu inseamna ca sunt cretin.... Romaniii sunt slabi la capitolul baze de date, altfel as fi gasit tone de documentatii pe site-uri romanesti. E drept, ca si mentalitatea asta a romanului e de vina, sa moara si capra vecinului... ca probabil si tu cind ai invatat cite ceva nu te-a ajutat nimeni, si atunci de ce sa ajuti pe altii ? Intimplarea face ca eu chiar am rascolit vreo 100 de site-uri ca sa gasesc despre Colate, si as putea sa pun pariu ca tu n-ai putea sa-mi indici un site care sa-mi arate concret ca pentru problema care o aveam eu era necesar strict colate Romanian_100_cs_as. Ori in ssms ai vazut cite colate cu care lucreaza caracterele romanesti sunt acolo... vreo 80... si ca sa vezi ca nu eram chiar nedocumentat cu privire la colate, colatia mea era Romanian_cs_as... Inainte de colatia asta testasem cel putin 10 variante de colatie, niciuna nu era buna. Oricum, sa fi convins ca daca gaseam macar o frintura de documentatie cu privire la colatia romaneasca pe site-urile straine... nu ajungeam aici. Ma feresc ca de dracu sa cer ajutor de la romani, pentru ca e o regula pe care poti s-o studiezi daca vrei (pe oricare forum romanesc), regula conform careia majoritatea celor care-si dau cu parerea nu stiu nimic, iar cei care stiu abia asteapta sa-i intrebi ceva ca inceapa sa te ia cu rasini, si aere, si fandoseli... De-asta e tara asta in halul in care e... |
#10
Posted 31 August 2014 - 17:52
sorin503, on 31 august 2014 - 17:31, said:
dar asta nu inseamna ca sunt cretin.... sorin503, on 31 august 2014 - 17:31, said:
Romaniii sunt slabi la capitolul baze de date, altfel as fi gasit tone de documentatii pe site-uri romanesti. sorin503, on 31 august 2014 - 17:31, said:
E drept, ca si mentalitatea asta a romanului e de vina, sa moara si capra vecinului... ca probabil si tu cind ai invatat cite ceva nu te-a ajutat nimeni, si atunci de ce sa ajuti pe altii ? sorin503, on 31 august 2014 - 17:31, said:
as putea sa pun pariu ca tu n-ai putea sa-mi indici un site care sa-mi arate concret ca pentru problema care o aveam eu sorin503, on 31 august 2014 - 17:31, said:
De-asta e tara asta in halul in care e... |
|
#11
Posted 31 August 2014 - 18:10
neagu_laurentiu, on 31 august 2014 - 13:50, said:
Nu. Nu te ajuta cu nimic ca ti-am spus direct (mi-am incalcat un principiu). Maine ai uitat iar cand ai o alta problema iar o sa astepti. Scopul forumului e sa te puna pe directie dar tu sa descoperi si sa-ti ramana pe viata. Exact ca in povestea cu pescuitul si furnizatul de peste. si inca ceva... Ai un principiu foarte gresit. In primul rind ca a invata pe cineva sa pescuiasca e cu totul si cu totul altceva decit a-i spune ca pe-aici pe undeva e o balta... A invata pe cineva sa pescuiasca inseamna sa-i arati niste secrete fara de care ar sta degeaba pe malul lacului si s-ar tot mira de ce nu prinde peste. Niciun manual de pescuit nu te poate face sa prinzi peste fara micile secrete. Ca sa poti zice ca ai dreptate ar trebui sa ma inveti toate tainele tsql-ului, dupa care sa astepti rezultate de la mine: respectiv sa scriu programe care sa aiba succes. In al doilea rind, tu nu ai de unde sti ca eu miine o sa uit ce mi-ai aratat. Am citit la documentatie de ma dor ochii, si n-am gasit nicaieri ce mi-ai zis tu. Daca crezi ca ma poti contrazice aici... te rog sa-mi dai un link cu explicatia concreta (generalitati stiam si eu, stiam ca _CS_AS se refera la caracter sensitive, si accent sensitive, si evident ca variantele astea le-am testat). Deci daca astept ceva concret, ma refer ca astept ceva documentatie care sa-mi explice de ce merge collate romanian_100_cs_as , si de ce nu merg celelalte. In al treilea rind, cind cineva pune o intrebare pe un forum tu nu ai de unde sa sti cit de important este pentru el raspunsul. Cheia trebuie sa fie in dezbatere, discutii, pentru asta se numeste forum. Ori daca tu presupui ca-i dai un fragment de informatie dupa care el o sa stie sa foloseasca, sau o sa aiba rabdare sau nevoie sa cerceteze te inseli amarnic. Forumurile si blogurile cele mai bune sunt cele in care pe o problema se despica firul in 4 pina intelege toata lumea, pentru ca raspunsurile sunt indexate in google, si poate ajungi sa dai de o chestie delicata si foarte concreta pe un forum cautind de fapt niste termeni care n-ar mai fi fost gasiti daca discutia murea in fasa... neagu_laurentiu, on 31 august 2014 - 17:52, said:
Nu mai pune nimic si citeste in MSDN, citesc si in MSDN... dar asta n-am gasit. Domeniul asta e IMENS, de regula studiez organizat, dar sunt cazuri cind am de rezolvat ceva concret si mi-e lehamite sa intru in msdn pentru fiecare fleac. Plus ca acolo sunt chestiuni principiale, nu totdeauna gasesti informatie pentru cazuri particulare ca asta. Daca eram indian sau iranian... gaseam, ei au alt mod de gindire, au tutoriale pentru toate fleacurile. |
#12
Posted 31 August 2014 - 18:31
Pai e arhicunoscut ce inseamna codul de pagina 1250 sau ca avem SQL/Windows Collate iar gruparile iar sunt pe net la un click distanta, cum SQL Server tine cont de acestea la sortari, cautari si ce mai intra in poveste. Stiu, nu e ce vrei tu.
http://msdn.microsof...y/ms188046.aspx http://collation-cha...nian_CI_AI.html |
#13
Posted 31 August 2014 - 18:38
neagu_laurentiu, on 31 august 2014 - 18:31, said:
Pai e arhicunoscut ce inseamna codul de pagina 1250 sau ca avem SQL/Windows Collate iar gruparile iar sunt pe net la un click distanta, cum SQL Server tine cont de acestea la sortari, cautari si ce mai intra in poveste. Stiu, nu e ce vrei tu. http://msdn.microsof...y/ms188046.aspx http://collation-cha...nian_CI_AI.html pai crede-ma ca am citit de era s-o iau pe cimp.... uite, tot un site informativ, si tot nu gasesti informatia exacta: http://www.fileforma.../0218/index.htm |
#14
Posted 31 August 2014 - 18:43
Pai vezi ca e o diferenta intre Ș si Ş (U+015E).
Edited by neagu_laurentiu, 31 August 2014 - 18:47. |
#15
Posted 31 August 2014 - 18:52
neagu_laurentiu, on 31 august 2014 - 18:31, said:
Stiu, nu e ce vrei tu. http://collation-cha...nian_CI_AI.html da, asta are s cu sedilă, pentru asta mi-am pierdut o zi intreaga... pina sa-mi dau seama ca exista un tip diferit de Ș ... Am facut tot felul de incercari sa-mi dau seama de ce nu gasea nimic pe colatia aia, cautam Șarpe si imi gasea arpe... cu toate ca ceream fara % in fata... Ș-ul pur si simplu nu-l lua in considerare. E o deruta totala colatia aia... |
|
#16
Posted 31 August 2014 - 18:56
Pai ai documentat codul de pagia 1250 care e mapat in Romanian_CI_AI si care-i diferit de versiunea BIN ori _100_
http://msdn.microsof...y/cc195052.aspx |
#17
Posted 31 August 2014 - 19:18
neagu_laurentiu, on 31 august 2014 - 18:56, said:
Pai ai documentat codul de pagia 1250 care e mapat in Romanian_CI_AI si care-i diferit de versiunea BIN ori _100_ http://msdn.microsof...y/cc195052.aspx pai da, dar tu crezi ca eu cind am vazut ca e un Ș acolo aveam de unde stiu ca mai exista un alt fel de Ș ? (si mai ales ca Ș-ul cu sedila e doar un surogat de Ș ?) Eu incerc sa lucrez pastrind compatibilitatea cu utf-8 ca sa nu patesc ca astia: http://beginner-sql-....com/ro/sql.htm (apropo de experti romani, site copy-paste-google-translate ) In fine, ceea ce trebuie sa fac e un fel de adaptor (functie de adaptare a caracterelor), prin care indiferent cum vin caracterele inspre baza de date sa le converteasca intr-un singur mod, iar atunci cind se cauta dupa tot felul de caricaturi de caractere sa fie mai intii convertite la acel mod si abia dupa aia sa faca cautarea... Acuma la faza asta, daca gaseam pe undeva ceva facut de-a gata... nu mai pierdeam timpul, dar asa... o sa trebuiasca sa-mi storc creierii si sa-mi rup ochii |
#18
Posted 31 August 2014 - 19:28
sorin503, on 31 august 2014 - 19:18, said:
pai da, dar tu crezi ca eu cind am vazut ca e un Ș acolo aveam de unde stiu ca mai exista un alt fel de Ș ? (si mai ales ca Ș-ul cu sedila e doar un surogat de Ș ?) |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users