Collation configuration in SQL Server 2005 Express setup - sql

I had to re-install my SQL Server 2005 Express instance due to a conflict with collations.
Now, once in the setup, I can't see the SQL_Latin1_General_CP1_CI_AI collation, I see "Latin1_General" instead, and I've been told is not the same.
Could you please tell me where I can find this?

The CI and AI bits mean "Case Insensitive" and "Accent Insenstive" (which are checkboxes in the installation dialog if I remember correctly). The CP1 part is, I think, "Code Page 1" and refers to the US region whereas without CP1, it refers to the UK region (or maybe, more generally, non-US English) - this may also be a separate selection in the installation dialog.
If you don't se these options, it will default to the codepage most suitable for the system default international settings in Windows (note: this may not be the same as your profile's international settings) at the time of installation. You can change these (both yours and the system default) via the control panel.
UPDATE:
I've downloaded and run through the installation for SQL Server Express 2005 (SP3)...
I deselected "Hide advanced configuration options" on the "Registration Information" page (but not sure if this was necessary). On the Collation Settings" page I selected "SQL collations (used for compatibility...)" and then "Dictionary order, case-insensitive, accent-insensitive, for use with 1252 Character Set". Everything else was left on defaults.
The result was a SQL Server Express 2005 installation using the SQL_Latin1_General_CP1_CI_AI collation.
More information on this topic can be found here: http://msdn.microsoft.com/en-us/library/ms180175.aspx

Related

Merge replication does not work with non-default conflict resolver

I have been evaluating merge replication, 'push' subscription on SQL Server 2014. If the default resolver is used (I refer to #article_resolver parameter of sp_addmergearticle), all seems to work as expected. However if I use "Microsoft SQL Server Subscriber Always Wins Conflict Resolver" (or any other MS standard resolver for that matter), if the Subscriber is on a different machine, the merge agent invariably gives the following error: "The process could not initialize . Verify that the component is registered correctly."
This does not happen if the Subscriber is on the same machine as the Publisher and Distributor.
The problem seemed to exist in SQL Server 2008 according to some posts but it has been apparently fixed since then. I've tried the following:
#partition_options = 0, as was suggested somewhere.
Copied ssrpub.dll (the resolver dll) to the Subscriber machine (should not really matter as this is 'push' subscription?)
Registered ssrpub.dll with regsvr32 on the Publisher/Distributor machine.
I've also run sp_enumcustomresolvers on the Publisher machine, and it happily showed all standard resolver, including the "Microsoft SQL Server Subscriber Always Wins Conflict Resolver".
Another thought is, I'm using SQL Server Express as the Subscriber (on the remote machine). Perhaps it does not support custom resolvers? (I'm using the full SQL Server in the 'local subscriber' variant, which does work OK as I mentioned before).
Note also that if I create a new publication via SSMS, the Resolver tab of the Article Properties dialog is empty, i.e. it does not list any resolver. The same tab contains the full list of resolvers though, if opened for an existing publication.
Yes it has turned out that SQL Server Express does NOT support custom COM conflict resolvers; it is actually confirmed here: https://support.microsoft.com/en-us/kb/2664701.
There are also custom stored procedure conflict resolvers, but they require a special "Microsoft SQLServer Stored Procedure Resolver", which is a COM resolver, and as such is not supported in SQL Server Express either.

Accent insensitive searches in Ektron

We are running into issues when doing searches with Accent Mark using Ektron CMS. Searching on "Guantánamo" (with accent mark) is returning results but "Guantanamo" is not returning results. Any idea how to get the searches behave insensitive to accent characters?
We suspect we had this functionality working a year back but seems to be broken. Could this be related to any of the windows updates to the Indexing Server?
We are using Windows Server 2008. The Property "Allow Use of diacritics" is Disabled in the
Local Computer Policy "Computer Configuration/Adminstrative Templates/Windows Components/Search"
Thanks,
Madhu.
If it is just some specific words you could define a synonym so that Guantánamo is a synonym to Guantanamo.
From control panel on your search server, open the Indexing Options > Advanced section, and make sure that the "treat similar words with diacritics as different words" option is not selected.
from:
http://programming4.us/desktop/2346.aspx

How to restore a database from large sql file?

I have a 2 GB SQL file, generated from SQL Server database 2008, which includes data and schema. SQL Server 2008 Express does not even open the file saying an error:
Error: HRESULT E_FAIL has been returned from a call to a COM component
but, the file opens in word pad while it just hangs after loading the file.
Any idea or suggestions what is the problem and how to overcome?
I experienced similar issue before, this is how I fixed it:
Go to Control Panel -> Clock, Language, and Region -> Change location
Change your location in the format tab to English (United States) and in the location tab change to United States.
Also please make sure that the Language for non-Unicode program section that you can find inside the Administrative Tab in the Change Location section should be set to English (United States).

Find out more information about how a database became empty?

I've got a database on a SQL Server 2005. Before the weekend, I could open this database in SQL Server Management Studio and see Database Diagrams, Tables, Views etc. However, now when I click on the '+' on the Node, it just disappears, showing the database is empty.
I have full control over the server. How can I find out what made this database lose all its tables/data? Cheers
SMSS 2005 Hides DB objects that you don't have access to. Is it possible that your access could have been changed over the weekend (ie the tables etc are still there, you just can't see them).
If by "full control over the server" you mean that you are a member of Administrators Group in Windows, its possible that the BuiltIn\Administrators group has been removed from being a SQL administrator in the sql server security configuration (its often regarded as bad practice to have BuiltIn\Administrators with these rights to SQL anyway).

Aliasing a linked server?

I have a server which I need to have as a linked server to another server, using sp_addLinkedServer.
My server's name is in the format "DepartmentName.CompanyName.com", which I can usually change to [blah.blah.com], but which I can't use in the SQL Server Management Studio View creator, because it keeps deleting my square brackets...
On the other hand, because the #srvproduct is SQL Server, I can't specify a name for the server to use, either, so I can't just call it "DepartmentName".
I seem to be in a bit of a catch-22 here. Any suggestions?
The View editor in Management studio (and enterprise manager before it) is, shall we say, rather limited, and prone to exploding the number of references to a table/view if there are complex conditions.
It's much to be preferred that you learn to write CREATE/ALTER VIEW statements in query windows (there are options to script VIEWs to a new query window as ALTER, if you're wanting to update an existing view).
Alternatively, you can add the linked server using, say, the "Microsoft OLE DB Provider for SQL Server", "SQL Native Server", or any of a number of other providers, rather than using the "SQL Server" provider, and then you can specify a different name for the linked server. (We do this in my shop so that our test servers refer to their partners using the same names as are used on our production servers)
E.g.:
EXEC master.dbo.sp_addlinkedserver #server = N'ALIAS', #srvproduct=N'ACTUALSERVER', #provider=N'SQLOLEDB', #datasrc=N'ACTUALSERVER'