|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.09.2010, 13:07 | #1 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Delphi + MySQL (типы полей)
Всем привет.
Программа написана в связке Delphi + MySQL с использованием компонентов MyDAC. В таблицах MySQL есть типы полей, которые Delphi "не видит". Например, DOUBLE или VARCHAR. Мне необходимо узнать тип поля таблицы. Если я указываю на поля VARCHAR или CHAR и пишу Код:
Тип ftMemo срабатывает на типах полей TINYTEXT, MEDIUMTEXT, TEXT, LONGTEXT. Тип FLOAT определяется, а тип DOUBLE определить вообще не удается и т.д. 1. Как программно узнать точный тип поля таблицы MySQL? 2. Как узнать длину поля (если она есть)? 3. Как узнать является ли поле автоинкрементным ftAutoinc не годится, т.к. поле является INT(11) т.е. ftInteger)? Спасибо. |
03.09.2010, 14:38 | #2 |
Форумчанин
Регистрация: 25.08.2010
Сообщений: 258
|
в SQL VArchar ето и есть String
|
03.09.2010, 15:51 | #3 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Спрошу по-другому:
Как из Delphi программно отличить Char от Varchar, Float от Double, Int от Bigint ?? |
05.09.2010, 14:22 | #4 |
Форумчанин
Регистрация: 25.07.2009
Сообщений: 533
|
Не хочу показаться грубым но вам стоит почитать о типах данных MySQL.
А также о типах данных Delphi. Тогда все встанет на свои места и не будет возникать вопроса о том что такое в MySQL char, а что такое varchar. И в чем их отличия. Гугль вам в помощь. Типы в MySQL http://www.google.com/search?sourcei...B+%D0%B2+Mysql Типы в Delphi http://www.google.com/search?sourcei...+%D0%B2+Delphi Вот я даже за вас часть работы сделал Вам осталось только почитать и понять.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA) Последний раз редактировалось rdama; 05.09.2010 в 14:25. |
06.09.2010, 15:50 | #5 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Я знаю чем отличаeтся char от varchar, и какие бывают типы полей в различных СУБД.
Вопрос совсем в другом. Например, первое поле в mysql-таблице integer. Код:
|
07.09.2010, 05:30 | #6 | |
Форумчанин
Регистрация: 25.07.2009
Сообщений: 533
|
Очень хорошо
Цитата:
А для поля Double нужно использовать ftFloat. Это для UniDAC, но это равносильно и для MyDAC. Код:
Там можно узнать точные типы полей. Код:
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA) Последний раз редактировалось rdama; 07.09.2010 в 05:32. |
|
07.09.2010, 10:16 | #7 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Так в том и вопрос. В MySQL тип может быть и Float и Double.
И код if UniTable1.Fields[I].DataType = ftFloat then сработает на обоих. А нужно определить точно. И как средствами Delphi определить, что тип поля является GEOMETRYCOLLECTION или MULTIPOLYGON? Последний раз редактировалось _SERGEYX_; 07.09.2010 в 10:23. |
07.09.2010, 10:22 | #8 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Wow, ну, и балда же я. Зациклился на дельфийском коде.
Простейший запрос SHOW COLUMNS FROM TABLE выводит всю нужную инфу о таблице. Всем спасибо. Тему можно закрывать. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Типы файлов (Delphi) | VadEr | Помощь студентам | 8 | 16.07.2010 02:03 |
Объеденение полей запроса в для отображения нескольких полей в одном списке | mrCreator | Microsoft Office Access | 3 | 08.08.2009 00:53 |
Типы в Delphi | guffer | Общие вопросы Delphi | 6 | 09.07.2009 23:22 |
Типы полей ADOTable | AnnNet | БД в Delphi | 2 | 21.07.2008 16:40 |