Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.22;
Скачать: CL | DM;

Вниз

Длина поля в таблице MySQL   Найти похожие ветки 

 
Сергей А.   (2006-08-24 17:30) [0]

Установил соединение с MySQL с использованием компонентов ADO. В редакторе полей вижу, что длина полей гораздо меньше описанной в БД. Если в редакторе полей я увеличиваю длину, то при сохранении изменений в БД происходит ошибка.


 
Desdechado ©   (2006-08-24 19:05) [1]

>  длина полей гораздо меньше описанной в БД.
Примерчик.


 
Anatoly Podgoretsky ©   (2006-08-24 20:56) [2]

Точно меньше, не путаешь?


 
Сергей А.   (2006-08-25 10:18) [3]

Дали мне такое описание таблицы User:
ID: integer (PK)
FIO: varchar(255)
Email: varchar(255)
Password: varchar(100)
Phone: varchar(100)
Address: varchar(255)
Я подключаюсь к базе, в ADODataSet1.CommandText пишу select ID, FIO, Email, Password, Phone, Address from user, в редактор полей добавляю все поля и смотрю их размер по умолчанию:
FIO: 17
Email: 18
Password: 3
Phone: 7
Address: 12
Запускаю приложение, в гриде добавляю строку и начинаю заполнять данными, в поле FIO нельзя вносить больше 17 символов. Возвращаюсь в ADODataSet и изменяю длину поля FIO на 50. В гриде вношу значение длиной в 50 символов и сохраняю. Получаю EOleExeption "Произошли ошибки во время выполнения пошаговой операции. Проверьте значения всех операций."
В этой таблице уже была одна запись. Размеры содержимого строковых полей как раз и соответствуют той длине, что по умолчанию берется в DataSet.


 
sniknik ©   (2006-08-25 11:27) [4]

> Дали мне такое описание таблицы User:
> ...
не стыкуется с
> пишу select ... смотрю их размер по умолчанию:
> ...
размер по умолчанию при добавлении полей берется из базы (открывается соеденение, запрашивается соответствующая схема... и т.д.), т.е. в данном конкретном случае я бы больше верил значениям по умолчанию чем тому что тебе дали.

ну или как вариант, у выбраного тобой провайдера данных не реализовано/глючно получение схем...
но т.к. провайдером кроме тебя наверняка пользуется еще куча народу то... ну не самописный же он?


 
Сергей А.   (2006-08-25 11:51) [5]

Спасибо за внимание, нашел решение. В настройках ODBC поставил "Don"t otimize column width"



Страницы: 1 вся ветка

Текущий архив: 2006.10.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
15-1159431050
euru
2006-09-28 12:10
2006.10.22
Веб-дизайн


3-1156145027
Mishenka
2006-08-21 11:23
2006.10.22
Как запросу динамически добавить вычисляемое поле?


2-1159669801
lobach
2006-10-01 06:30
2006.10.22
Получение символов


3-1156851812
novill
2006-08-29 15:43
2006.10.22
Ошибка при IBEventAlerter.RegisterEvents;


8-1143042841
Sco
2006-03-22 18:54
2006.10.22
Отразить обьект