|
|
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
проблема: для update поля nvarchar , use что-то типа: update bg_if_defs Set name =N'é²çèazert' Where if_id =1284 ( это французские буквы :), для примера... ) но в PB команда update bg_if_defs Set name =:NewText Where if_id =1284 где NewText - слово в unicode приводит к фразе update bg_if_defs Set name ='é²çèazert' Where if_id =1284 соответственно прописывается не в unicode, а в формате varchar :( конечно, можно сделать что-то типа NewText = "Update bg_if_defs Set name = N'"+NewText +"' Where if_id = 1284 " Execute immediate :NewText; и это работает, но уж больно много менять тогда... как указать PB, чтобы он сам понимал что меняется именно unicode поле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2008, 21:58 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
какая БД ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 09:20 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
А записать update bg_if_defs Set name ="N'é²çèazert'" Where if_id =1284 религия не позволяет? Или как правильно заметили, какая СУБД? Проблема во включении апострофа, в некоторых случаях апостроф записывают как "~'" ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 09:29 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
Бд - MsSql драйвер -SNC SQL Native Client(OLE DB) при чем тут религия? NewText - это переменная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 11:25 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
точно не знаю, надо читать... cудя по докам в инете, SNC умеет автоматически везде подставлять префикс N но это если сервер с юникодом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 11:53 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
не совсем понял , что значит "сервер с юникодом"? у меня в использовании mssql2000&2005 ... в свойствах DBParm не нашел явного указания на юникод. да в общем-то все явные изменения юникод полей можно и динамический sql завернуть, но вот с DW то как? читатет-то все поля в юникоде и в запросах и в DW замечательно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 12:17 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
я так понимаю сервер должен иметь юникодовскую кодировку по умолчанию. для одбц это параметр autotranslate=yes/no вот из хелпа по одбц драйверу к SQL Native Client Perform translation for character data check box When this check box is selected, the SQL Native Client ODBC driver converts ANSI strings sent between the client computer and SQL Server by using Unicode . The SQL Native Client ODBC driver sometimes converts between the SQL Server code page and Unicode on the client computer. This requires that the code page used by SQL Server be one of the code pages available on the client computer. When this check box is cleared, no translation of extended characters in ANSI character strings is done when they are sent between the client application and the server. If the client computer is using an ANSI code page (ACP) different from the SQL Server code page, extended characters in ANSI character strings may be misinterpreted. If the client computer is using the same code page for its ACP that SQL Server is using, the extended characters are interpreted correctly. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 13:42 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
Коллеги, так может кто-нибудь чего-нибудь толкового сказать по этому вопросу? из датавинды тоже ничего не сохраняется в юникодные поля (MSSQL)... все буквы с хвостиками преобразуются в английские :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 18:47 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
я так думаю что этот топик ближе к форуму MSSQL. они должны знать как избежать добавления приставки 'N' к каждой юникодовой строке. с другими БД у билдера таких проблем нет. -- ЗЫ: вы пробовали использовать источник данных ОДБЦ и установить указанный флаг в TRUE? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 18:59 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
с новым годомя так думаю что этот топик ближе к форуму MSSQL. они должны знать как избежать добавления приставки 'N' к каждой юникодовой строке. с другими БД у билдера таких проблем нет. -- ЗЫ: вы пробовали использовать источник данных ОДБЦ и установить указанный флаг в TRUE? вообщето ОДБЦ совсем не собирались использовать. да и PB11 приобретался только потому, что у него SNC SQL Native Client имеется, а тут такие грабли ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 19:05 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
с ODBC все работает, но эт пока не выход ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 19:10 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
А если работать с ОДБЦ и смотреть через профайлер, чего там посылает датавинда при нажатии кнокпи Update, то профайлер показывает совсем не апдейт, а дерганье процедуры с параметром. такой подход, я думаю, скажется на производительности, если вдруг придется из скрипта чего-нибудь апдейтить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 19:33 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
есть св-во и для OLEDB: AutoTranslate Connection String Keyword VanoRА если работать с ОДБЦ и смотреть через профайлер, чего там посылает датавинда при нажатии кнокпи Update, то профайлер показывает совсем не апдейт, а дерганье процедуры с параметром. и в датавинде не прописано апдейтить через процедуру? .. что за имя процедуры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2008, 09:52 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
с новым годоми в датавинде не прописано апдейтить через процедуру? .. что за имя процедуры? Скорее всего что-нибудь типа sp_executesql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2008, 10:10 |
|
||
|
как из PB11 обновить unicode-поле?
|
|||
|---|---|---|---|
|
#18+
проблема решается, если в строку парам добавить : SQLCA.DBParm = “DisableBind=0” ответ получен от support@sybase и проверен :) работает. напоминаю речь идет именно о SNC SQL Native Client ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2008, 19:36 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=35377005&tid=1336628]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 400ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...