powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка при работе с TEXT и базой MySQL
11 сообщений из 11, страница 1 из 1
Ошибка при работе с TEXT и базой MySQL
    #39721930
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
В интернете нет ответа, обращаюсь к вам - гуру Accessa.

Подключил Access к базе Mysql через ODBC драйвер.
Все работает отлично.

Сегодня понял, что текстовое поле с типом VARCHAR заменил на TEXT, так как размер нужен более 255 символов.
Теперь возникла проблема:
1. При открытии таблиц в Access пишет все записи #удалены и только после принудительного обновления f5 таблица отображает данные. Скрин http://prntscr.com/l9rzzp
2. Запросы: если убрать фильтры, то работают норм, если применить фильтр при загрузке (!даже не потекстовому полю), то так же пишет записи #eудалены.

Вопрос 1: почему при работе с типом поля TEXT данные не загружаются при открытии таблицы?
Подразумеваю, что данные в TEXT слишком большие и запрос обрубается, тогда где увеличить время ожидания данных с Mysql?
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39721964
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как только возвращаю тип поля VARCHAR, проблема исчезает и данные в таблицу залетаю мгновенно из Mysql
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722049
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕМНИП надо шаманить с типом данных связанного поля в самом Аксессе, ставить что-то типа "Длинный текст".
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722084
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quickstar,

VARCHAR в Mysql может быть больше 255
посмотрите их мануалы, там что то порядка >2000
можно пробовать играть с размером
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722272
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Игортан, Вы правы в MySQL 5.0.3 и более поздних версиях и от 0 до 65.535 .

Сейчас вопрос в том, если в VARCHAR ставлю Длина/Значения свыше 341,
то в access выводится #удалены
и отображаются только после f5

Длину 341 выяснил экспериментальным путем.
Может кто знает почему свыше 341 символа, Access уже не загружает данные в таблице?
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722278
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, http://prntscr.com/l9wdiy
так и сделано по-умолчанию.
Но загадка не разгадана) не работает.
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722286
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quickstar,

я натыкался на проблему
сейчас не сильно вспомню...
тоже поставил тип TEXT и была проблема с сохранением строки
причем хоть пустая хоть нет.
Скинул тоже на VARCHAR(255) и все стало на места (благо, человека устроило).
Только у меня форма висела тупо на Recordset, без своих табличек

Вообще, система MySQL не родная, как то я все время натыкался на мелкие неприятности, в сравнении
с MS SQL...
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722314
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас вопрос решен "заплаткой" - команда на повторное обновление таблицы после загрузки формы.
Пользователю это не заметно и данные отображаются.

Но я буду рад, если кто-то подскажет решение самой проблемы - как сделать так, чтобы акцесс отображал сразу контролы с длиной свыше 341 символа.
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722436
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quickstar,

а попробуйте эксперимент
из рекордсета взять сами данные а для примера ограничьте набор одной строкой
и сделайте размер поля больше 341
команда GetString
при этом просто посмотрите в дебагере, что покажет по этому полю
будет строка обрезана или нет

кстати вариант - поле разбивать на несколько.
Хоть и не кошерно, но можно будет передать больше данных
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722469
quickstar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Игортан, вау, для меня звучит сложно.
Я только учусь программировать, с рекодсетом пока не справлюсь.
...
Рейтинг: 0 / 0
Ошибка при работе с TEXT и базой MySQL
    #39722479
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quickstar,

что то вроде этого
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Dim MyRec As New ADODB.Recordset
Dim TempStr as String

NewCtart:
'линк к серверу
If LincSQL = True Then
    MyRec.CursorLocation = adUseClient
    Set MyRec.Open "Хранимка", MyConnect, adOpenDynamic, adLockOptimistic
    If Not MyRec.EOF Then TempStr = MyRec.GetString(, , ";", ";")
    MyRec.Close
    debug.print TempStr
Else
    If i < 2 Then
        i = i + 1
        Call LincSQL
        GoTo NewCtart
    Else
        MsgBox "Не удалось подключение к БД!", vbInformation, "Ошибка подключения!"
        DoCmd.Close acForm, Me.Name
    End If
End If
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка при работе с TEXT и базой MySQL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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