Проблем 3 от изпита през Март месец по DataBase
Добре,някой би ли ми казал къде ми е грешката,защото незнам какво ли не пробвах и ми дава 0 точки,дори и с авторското решение...
Това ми е кода:
SELECT CountryName, CountryCode,(CASE CurrencyCode WHEN 'EUR' THEN 'Euro'
ELSE 'Not Euro' END) AS Currency FROM Countries
ORDER BY CountryName
Ето снимка и от judge...
http://s8.postimg.org/c859639yt/111.jpg
Нещо пак съм изпуснал от лекциите,за този collation.От къде се наглася и какъв трябва да бъде по default,че да не остана без лаптоп неделя ?
При инсталацията на sql server-a се избира дефоутен за всички бази и като се пусне скрипт за създаване на база ако в него не е казано какво да ползва си ползва дефоутния. При мен е на кирилица, което явно е било грешка да го слагам, но по начина описан в по-горния ми пост работи коректно.
Cyrillic_General_CI_AS ето този ми показва,че е на базата.
Не е само Åland, защото го копирах и не става.
Да, това е "проблема", просто символите, които искаш да вложиш в него ги няма и той импровизира като слага други. Резултата е реботеща заявка с 0 точки ;)
Ами то не е само едно име с такива символи, много са.
Ръчно го смени колишъна от скрипта на базата преди да я пуснеш да се прави.
А кой collation да задаваме като създаваме database за да нямаме проблеми ?
Аз реших тоя изпит с Latin1_General_100_CS_AS_SC, Рояла в друга тема пише за SQL_Latin1_General_CP1_CI_AS . Като цяло си нямам и на идея кой е "правилния"
Като си вкараш данните в базата ако ползваш такъв енкрипвън (collation), който не поддържа определени символи - те влизат в базата както могат. После като пуснеш заявката ти излиза резултат, копираш го в джъджа и той сравнява дали това, което си дал като резултат отговаря на това, което автора на изпита е задал като резултат. Проверката се прави на база на символи, казано по друг начин за джъдж Aland и Åland са две различни неща. Ти подаваш в базата ти Åland, тя няма това Å и слага A - ето го проблема.
Съжалявам, че питам в чужда тема, но така и не разбрах- какво значение имат тия collation-и, след като аз си пиша решенията в черния редактор в judge-a и пак 0 секунди, 0 точки?