Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Combinatie de conturi pentru tran...

Adaptor semnal hi to low

Jocuri Android Multiplayer online...

Diferenta consum smart meter - Co...
 Recomandare demontare+instalare ...

CAIET SERVICE PREDEAL II

Internare spital psihiatrie

CM de snooker 2024
 Scot penele dupa montajul tamplar...

Masina de spalat vase si grasimea

Noua lege de acces in paduri

Sunt ouale proaspete?
 Aplicatie invatare limba Germana

Presbiopia - la 43 ani ?

Termen transcriere autovehicul

Cazare Timisoara pe 4-5 zile
 

problema diacritice nvarchar -> varchar

- - - - -
  • Please log in to reply
6 replies to this topic

#1
Kroghy

Kroghy

    Guru Member

  • Grup: Senior Members
  • Posts: 15,973
  • Înscris: 06.01.2006
salutare la toata lumea
am o tabela in sql cu camp nvarchar unde sunt puse º si þ de tip Ro(standard)
datele de acolo trebuie sa le duc intr-o tabela varchar cu º si þ de tip Ro(legacy)
nu reusesc sa le transform, am incercat in toate felurie in care m-am gandit eu
collate nu merge din prima, toate º si þ ajung ?
am incercat cu replace(campNvarchar,nchar(537),'º') unde nchar(537) este º scris cu standard iar ultimul parametru este scris cu legacy
am incercat cu convert(varchar(255,replace(...)) si nu vrea
am incercat sa fac o functie de conversie si nici asta nu merge

daca incerc urmatoarea functie
alter function conversieRo(@sirNvarchar nvarchar(255))
returns varchar(255)
as
begin
declare @sirVarchar varchar(255);
set @sirvarchar='ºþ';
return(@sirvarchar)
end
go


daca incerc sa scriu set @sirvarchar='ºþ'; cu ș si ț de tip legacy atunci returneaza st, daca le scriu cu standard atunci returneaza ??
ceva idei ce sa mai incerc?

#2
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,601
  • Înscris: 30.07.2003
Nu asa se face transformarea !
Cauta in documentatie despre "Collations and Code Pages".

Edited by neagu_laurentiu, 21 July 2014 - 19:23.


#3
Kroghy

Kroghy

    Guru Member

  • Grup: Senior Members
  • Posts: 15,973
  • Înscris: 06.01.2006
te referi la metoda de mai jos?
select 'șț' collate SQL_Latin1_General_CP1_CS_AS
sau
select 'șț' collate SQL_Romanian_CP1250_CS_AS
asta a fost prima incercare dar nu merge
daca șț le scriu cu romanian(standard) atunci rezultatul e "??"
daca șț le scriu cu romanian(legacy) atunci rezultatul e "st"

Edited by Kroghy, 21 July 2014 - 19:35.


#4
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,601
  • Înscris: 30.07.2003
select cast(N'ŞşĂăÎîŢţÂâ' collate SQL_Romanian_CP1250_CS_AS as varchar(20))

select cast(camp_nvarchar collate SQL_Romanian_CP1250_CS_AS as varchar(max)) from table

'string' /* string ANSI */
N'string' /* string Unicode */


Edited by neagu_laurentiu, 22 July 2014 - 07:17.


#5
Kroghy

Kroghy

    Guru Member

  • Grup: Senior Members
  • Posts: 15,973
  • Înscris: 06.01.2006
am incercat cu cast de mai sus si tot nu merge, ajung nume de genul ?ERBAN, ZOI?A, DULU?A
poate o fi un bug
am renuntat pana la urma, am cautat toate numele si le-am inlocuit manual

#6
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,601
  • Înscris: 30.07.2003
Daca in campurile Unicode n(var)char sunt ok textele atunci transformarea la (var)char pe un octet nu pune probleme, mai trebuie sa setezi si baza pe COLLATE-ul in cauza.

Edited by neagu_laurentiu, 22 July 2014 - 11:36.


#7
sorin503

sorin503

    New Member

  • Grup: Members
  • Posts: 16
  • Înscris: 16.11.2011
varchar nu recunoaste caractere unicode, trebuie sa modifici cu nvarchar

Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate