Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Проблема в том, что в поле name таблицы закачаны строки, содержащие некоторые(не все) символы в неправильной кодировке в верхнем и нижнем регистре. можно поменять их функцией replace. В результате меняет символы и в нижнем и в верхнем регистрах. Как сделать замену регистрочувствительной? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2002, 16:05 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Проще всего, наверное, свою функцию написать ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2002, 16:11 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Для 7, пожалуй примерно так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2002, 17:58 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
REPLACE чувствительна к регистру. При условии, что аргумент (поле name) имеет case-sensitive collation. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2002, 18:14 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Если версия сервера 2000, то можно воспользоваться COLLATE, например (коллейшн базы по умолчанию - Latin1_General_CI_AS): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2002, 13:42 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. результат: 1.ASERTYUHJK 2.asertyuhjk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2002, 15:05 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Cat2, здравствуйте! Тоже возникла такая задача, но на MS SQL Server 2017. Ваш скрипт подойдёт? Или может там уже придумали регистрочувствительные функции подмены? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2019, 15:48 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис ГаркунCat2, здравствуйте! Тоже возникла такая задача, но на MS SQL Server 2017. Ваш скрипт подойдёт? Или может там уже придумали регистрочувствительные функции подмены? Чем вам вариант с collate не нравится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2019, 15:52 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Minamoto, потому что вызов Код: sql 1. почему-то возвращает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2019, 15:59 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис ГаркунMinamoto, потому что вызов Код: sql 1. почему-то возвращает ?1. Cat2 здесь вряд ли появится. 2. У вас юникод (nvarchar)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2019, 16:31 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис ГаркунMinamoto, потому что вызов Код: sql 1. почему-то возвращает ? Потому что (как правильно выше написал iap) Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2019, 17:02 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Minamoto и iap, спасибо. Приставка N указывает программе, что на входе nvarchar? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 09:19 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис ГаркунMinamoto и iap, спасибо. Приставка N указывает программе, что на входе nvarchar? FAQ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 09:34 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
iap, спасибо. Получается с помощью N мы задаем default collation и одновременно допиской collate Latin1_General_CS_AS устанавливаем еще один collation. Зачем, кто из них побудит? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 10:09 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
*победит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 10:10 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис Гаркунiap, спасибо. Получается с помощью N мы задаем default collation и одновременно допиской collate Latin1_General_CS_AS устанавливаем еще один collation. Зачем, кто из них побудит? :)При чём здесь collation? Если пишем литеральную строку, то встаёт вопрос: а какого она типа? Чтобы избежать преобразование по умолчанию, когда имеем в виду юникодную строку, пишем перед ней букву N, и сервер в момент чтения этой строки знает, что это - юникод. Преобразование по умолчанию происходит не всегда корректно. Символы юникода в MSSQL двухбайтные в отличие от строк ASCII. Два байта на символ и один байт на символ - есть разница? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 10:17 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
iap, спасибо. А дописка collate Latin1_General_CS_AS для чего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 10:21 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис Гаркунiap, спасибо. А дописка collate Latin1_General_CS_AS для чего? Чтобы указать параметры сравнения строк, а конкретно - Case Sensitive (CS в названии). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 10:34 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Minamoto, спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2019, 11:18 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Попробовал применить совет на практике: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Возвращает ошибку вида "Не удалось привязать составной идентификатор "Np.C_Name1"" Если же N с пробелом: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. то ошибка "Неправильный синтаксис около конструкции "p"." Скажите, пожалуйста, как правильно применить ссылку на юникод(N)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 10:59 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис Гаркун, Код: sql 1. "N" нужен только у строковых констант, во всех остальных случаях он не нужен. Одна из красных единиц, видимо, лишняя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 11:23 |
|
||
|
Чувствительность к регистру (функция replace)
|
|||
|---|---|---|---|
|
#18+
Борис ГаркунЗдравствуйте! Попробовал применить совет на практике: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Возвращает ошибку вида "Не удалось привязать составной идентификатор "Np.C_Name1"" Если же N с пробелом: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. то ошибка "Неправильный синтаксис около конструкции "p"." Скажите, пожалуйста, как правильно применить ссылку на юникод(N)?N - это для строчных литералов. Для приведения поля к юникоду надо использовать CAST или CONVERT: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 11:24 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39849653&tid=1687401]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
129ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 446ms |

| 0 / 0 |
