Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Кодировка в Аксессе -> Фокс / 15 сообщений из 15, страница 1 из 1
17.03.2009, 16:39
    #35874657
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Всем привет!

Такая проблемка. Есть база на Аксе (1 рис). Как видно, одно поле - черте что. При сохранении в Ехсель (рис 2) - не многим лучше. При втягивании в Фокс это поле - квадратики.
Как бы в Фоксе получить реальное содержимое? Чую, юникод замешан, но как сконвертировать - не знаю.
...
Рейтинг: 0 / 0
17.03.2009, 16:40
    #35874665
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Виноват-с. Не вложил рисунки..
...
Рейтинг: 0 / 0
17.03.2009, 16:40
    #35874669
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
И еще
...
Рейтинг: 0 / 0
17.03.2009, 16:45
    #35874700
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
боюсь что никак дбф юникод не поддерживают
а здесь похоже именно он
порпобуй на фоксклубе задать ? там больше народу
может обходные пути какие и есть
...
Рейтинг: 0 / 0
17.03.2009, 17:14
    #35874835
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Спасибо, порою!
...
Рейтинг: 0 / 0
17.03.2009, 20:25
    #35875239
stoopper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Гулин Федорбоюсь что никак дбф юникод не поддерживают
а здесь похоже именно он
порпобуй на фоксклубе задать ? там больше народу
может обходные пути какие и есть

Может, до Фокса забрать инфу из Аксесса функцией FILETOSTR() и там ее разобрать, а потом уже в Фокс скидывать?
...
Рейтинг: 0 / 0
18.03.2009, 12:37
    #35876347
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Боролся с похожим , но на MS SQL - юникод в текстовых полях nvarchar
получилось так
select cast(prim as ntext) as prim
ну и в VFP9 второй вариант - SYS(987,.t.)
...
Рейтинг: 0 / 0
19.03.2009, 11:27
    #35878646
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
-=AlexiS=-Боролся с похожим , но на MS SQL - юникод в текстовых полях nvarchar
получилось так
select cast(prim as ntext) as prim
ну и в VFP9 второй вариант - SYS(987,.t.)

А можно показать, как использовать SYS(987,.t.) в данной ситуации?
...
Рейтинг: 0 / 0
19.03.2009, 11:57
    #35878770
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
В какой ситуации ?
Если ничего не известно -ни таблиц ни типов полей,ни что там собственно храниться
да и описывал я свои проблемы
у меня поля юникодные в MSSQL nvarchar
если
Код: plaintext
sqlexec(sql_con,'select prim ....
тогда в поле кракозябры
если
Код: plaintext
sqlexec(sql_con,'select cast(prim as ntext) as prim...
тогда всё ОК
а с Sys так в принципе все просто
Код: plaintext
1.
SYS( 987 ,.F.) && такая установка - по умолчанию
sqlexec(sql_con,'select prim ....
кракозябры
Код: plaintext
1.
SYS( 987 ,.t.)
sqlexec(sql_con,'select prim ....
и все ОК тоже , преобразований не надо

кстати в соседней ветке есть ссылка на хорошую статью про юникод
...
Рейтинг: 0 / 0
19.03.2009, 12:47
    #35878954
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
-=AlexiS=- ,

Вот мой код. Экспортирую из Аксесса (&put1) таблицу Table в Фокс

SYS(987,.t.)
m.lcDSNLess = "Driver={Microsoft Access Driver (*.mdb)};Dbq=&put1;Uid=S1;Pwd=773430E0;"
m.lConnect = SQLSTRINGCONNECT(m.lcDSNLess)
SQLEXEC(m.lConnect, "SELECT * FROM table", "CurResult")
browse

В Фоксе в получаемой таблице, там где в Аксессе поле в юникоде, появляется поле Char(10) с вопросиками. Независимо от SYS. Что не так делаю?
...
Рейтинг: 0 / 0
19.03.2009, 15:09
    #35879471
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Попробуй так составить запрос , чтобы в фоксе получилось Memo -поле
т.е. типа
Код: plaintext
SQLEXEC(m.lConnect, "SELECT * , cast(поле_с_юникодом as поле_длиной_больше_255)  FROM table", "CurResult")
...
Рейтинг: 0 / 0
19.03.2009, 15:54
    #35879610
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
-=AlexiS=-Попробуй так составить запрос , чтобы в фоксе получилось Memo -поле
т.е. типа
Код: plaintext
SQLEXEC(m.lConnect, "SELECT * , cast(поле_с_юникодом as поле_длиной_больше_255)  FROM table", "CurResult")


Добавил в Аксессе поле со свойством "ширина по введенным данным". В Фоксе новое поле стало значением .NULL.

Понятно, что я сделал не так, но как показать Аксессу, что в Фоксе при запросе нужно создать поле именно MEMO?
...
Рейтинг: 0 / 0
19.03.2009, 16:05
    #35879662
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Ну так как я в примере указал . Если символьное поле длиной больше 255 - фокс сам создает мемо.
в самом запросе нужно использовать что-то типа cast(), не знаю есть он в акцесе или нет
ну еще можно например к полу прибавить пробелов кучу
select pole+space(255) as pole
...
Рейтинг: 0 / 0
19.03.2009, 16:49
    #35879828
StandD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
-=AlexiS=-Ну так как я в примере указал . Если символьное поле длиной больше 255 - фокс сам создает мемо.
в самом запросе нужно использовать что-то типа cast(), не знаю есть он в акцесе или нет
ну еще можно например к полу прибавить пробелов кучу
select pole+space(255) as pole

Наверно, это диагноз... Прибавлял и к исходному полю 255 и к новому... Все равно в исходном- ????, а в новом - .NULL.
...
Рейтинг: 0 / 0
20.03.2009, 10:12
    #35880935
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в Аксессе -> Фокс
Статейку по ссылке посмотри - может поможет.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Кодировка в Аксессе -> Фокс / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]