Devo fare una migrazione da sql 2000 a 2005 ed ho restorato dei DB per
fare dei test. Volevo portare il RECOVERY MODE a SIMPLE...per segare i
log e mi esce questo errore:
Impossibile risolvere il conflitto tra le regole di confronto
"Latin1_General_CI_AS" e "SQL_Latin1_General_CP1_CI_AS"
nell'operazione equal to. (.Net SqlClient Data Provider)
Ho visto che il DB restorato e l'istanza hanno dei collate
differenti...
Il DB da 2000 arriva da un'istanza in inglese mentr il mio nuovo è in
Italiano.
Giusto per non cadere dalle nuvole al dunque, se io imposto default
language in INGLESE su quella futura anche se il software è in
Italiano...non dovrei avere sorprese vero?
Da SQL 2000 > sistema operativo inglese e SQL SERVER inglese
A SQL 2005 > sys operativo italiano e SQL SERVER italiano
Vorrei pareggiare al max. Imposto default language settings in
INGLESE, basta questo o devo fare altro....poi per il collate che fo?
Da cd? mi sembra che si impostatva da li ricordo...
GRAZIE, ALen
______
Per quelli nuovi ho trovato...(vedi sotto)
USE master;
GO
CREATE DATABASE testdb
COLLATE SQL_Latin1_General_CP1_CI_AS ;
GO
ALTER DATABASE testDB
COLLATE French_CI_AI ;
GO
"Alen Cappelletti" ha scritto:
> .
>
NI. Si tratta di un setup "light" ma pur sempre di un setup
> Vorrei pareggiare al max. Imposto default language settings in
> INGLESE, basta questo o devo fare altro....poi per il collate che fo?
La lingua � una cosa, la collation un'altra. La collation che viene
impostata per default dipende dalla lingua del sistema operativo in uso, ma
a collation uguale la lingua pu� essere diversa e non impatta il problema
che riscontri (semmai le date e altro).
> Da cd? mi sembra che si impostatva da li ricordo...
> GRAZIE, ALen
>
> ______
> Per quelli nuovi ho trovato...(vedi sotto)
> ALTER DATABASE testDB
> COLLATE French_CI_AI ;
> GO
Fai attenzione che con questo comando modifichi la collation di default del
database, ma non quella dei campi gi� creati per i quali, se vuoi, devi
procedere ad eseguire un ALTER TABLE ... ALTER COLUMN.
Se vuoi ho uno script per farlo che per� dovrei cercare...
Bye
--
Luca Bianchi
Microsoft MVP - SQL Server
--
Luca Bianchi
Microsoft MVP - SQL Server
Quello che ti serve � tutto in questa pagina
http://msdn.microsoft.com/en-us/library/ms179254.aspx
Il codice sotto dovrebbe pareggiare SQL2005 con il 2000 ma come lancio
questo comando..questo non ho capito...e sopratutto dici che è
necessario pareggiare il COLLATE per stare sicuro di tutto?.
GRAZIE.
Alen
Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=<istance>
/SQLSYSADMINACCOUNTS=sa /SAPWD=<psw>
/SQLCOLLATION=SQL_Latin1_general_CP1_CI_AS
Proprio la stessissima no. Quelle che iniziano con il prefisso "SQL" sono le
collation SQL Server; le altre sono le collation Windows. Le prime erano il
default fino a SQL Server 2000, le altre lo sono a partire da SQL Server
2005. Le 2 che hai citato dovrebbero (dovrebbero) essere comunque
equivalenti e le conversioni implicite sempre possibili.
> poi cmq ho impostatio la lingua in inglese come in SQL2000
> acnhe se � in italiano SQL Server 2005.
La lingua � un attributo del login. Devi fare attenzione che TUTTI i login
abbiano default language inglese (o ti riferisci ad un'altra lingua?)
> Il codice sotto dovrebbe pareggiare SQL2005 con il 2000 ma come lancio
> questo comando..questo non ho capito..
Il comando va lanciato dal prompt dei comandi. "Setup" � il setup.exe che
trovi nella root del DVD di installazione, quindi per eseguirlo devi
posizionarti nel percorso corretto o indicare il path per esteso.
> .e sopratutto dici che �
> necessario pareggiare il COLLATE per stare sicuro di tutto?.
Non credo che ci sia bisogno viste le collation in gioco (hai la possibilit�
di riprodurre quel problema che hai incontrato sull'errore nelle regole di
confronto?), ma nel dubbio meglio farlo ora...
> GRAZIE.
> Alen
D:\Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=<istance> /
SQLSYSADMINACCOUNTS=sa /SAPWD=<psw> /
SQLCOLLATION=SQL_Latin1_general_CP1_CI_AS
Identificativo errore
___________-
EventType : sql90setup P1 : unknown P2 : 0x667 P3 :
unknown
P4 : 0x667 P5 : unknown P6 : unknown P7 : sqlrun.msi
____________________________________
C:\Programmi (x86)\Microsoft SQL Server\90\Setup Bootstrap\LOG
\SqlSetup0010.cab
Ho fatto questa attivit� solo 2 volte e sempre utilizzando il DVD. Oltre a
provare con l'altro, leggi attentamente questo link
http://msdn.microsoft.com/en-us/library/dd207003.aspx
in particolare dove si dice "Insert the SQL Server 2008 installation media
into the disk drive, or, from a command prompt, change directories to the
location of the setup.exe file on the local server. The default location on
the server is C:\Program Files\Microsoft SQL Server\100\Setup
Bootstrap\Release."