Главная страница
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.034 c
2-1160023802
aries
2006-10-05 08:50
2006.10.22
FireBird и Делфи


2-1160235614
Iamdanil
2006-10-07 19:40
2006.10.22
Определить имя компьютера по имени сетевой папки


15-1159634328
Kolan
2006-09-30 20:38
2006.10.22
В тему про обучение ерунде :)


15-1159686860
Kerk
2006-10-01 11:14
2006.10.22
Олигархи


6-1148679826
Николас
2006-05-27 01:43
2006.10.22
Как узнать IP адрес