This is interesting. I was testing 2.3.5 with the adapter and noticed this test
# Event.title is limited to 5 characters
e1 = Event.create(:title => "一二三四五")
assert e1.valid?, "Could not create an event with a unique, 5 character title"
e2 = Event.create(:title => "一二三四五六七八")
assert !e2.valid?, "Created an event whose title, with limit taken into account, is not unique"
Even when I changed the column for event title to nvarchar(5), it was still now allowing the insert. I did some research and found this link below. Seems that SQL Server converts the UTF8 data to perhaps UCS=2 which has a different byte length. Has anyone else run into this? I typically do not rely on length validations for national/unicode columns, but wondered if anyone else knew this or could expound on the topic.
http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=362867