Posted By: Anonymous
I have an SQL query to create the database in SQLServer as given below:
create database yourdb on ( name = 'yourdb_dat', filename = 'c:program filesmicrosoft sql servermssql.1mssqldatayourdbdat.mdf', size = 25mb, maxsize = 1500mb, filegrowth = 10mb ) log on ( name = 'yourdb_log', filename = 'c:program filesmicrosoft sql servermssql.1mssqldatayourdblog.ldf', size = 7mb, maxsize = 375mb, filegrowth = 10mb ) COLLATE SQL_Latin1_General_CP1_CI_AS; go
It runs fine.
While rest of the SQL is clear to be I am quite confused about the functionality of
Can anyone explain this to me? Also, I would like to know if creating the database in this way is a best practice?
It sets how the database server sorts (compares pieces of text). in this case:
breaks up into interesting parts:
latin1makes the server treat strings using charset latin 1, basically ascii
CP1stands for Code Page 1252
CIcase insensitive comparisons so ‘ABC’ would equal ‘abc’
ASaccent sensitive, so ‘ü’ does not equal ‘u’
P.S. For more detailed information be sure to read @solomon-rutzky’s answer.