Форум программистов
 
О проблемах с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 26.07.2007, 16:06   #11
shuhermayer
Пользователь
 
Регистрация: 20.07.2007
Сообщений: 14
По умолчанию

помимо вопроса в предыдущем посте есть ещё один:

При вводе запроса:
Query1.SQL.Add('SELECT sfera.id FROM sfera');

выдаётся ошибка: General SQL error. .... Unknown column 'sfera.id' in 'field list"


Может я где-то что-то не связал?
На форме использовал компоненты:
Tdatabase
TQuery
TdataSource
TTable
вроде связал их.... вроде правильно.... прилагаю исходник, посмотрите, пожалуйста, что не так.
Вложения
Тип файла: zip bd.zip (497.1 Кб, 36 просмотров)
shuhermayer вне форума Ответить с цитированием
Старый 26.07.2007, 19:09   #12
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

id_sfera у тебя поле называется,
Цитата:
Unknown column 'sfera.id' in 'field list"
абсолютно верно матерится
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 26.07.2007, 19:22   #13
shuhermayer
Пользователь
 
Регистрация: 20.07.2007
Сообщений: 14
По умолчанию

да, точно, проблема с ошибкой ушла, но всё равно выводит МЕМО
Изображения
Тип файла: jpg Clipboard02.jpg (3.6 Кб, 141 просмотров)
shuhermayer вне форума Ответить с цитированием
Старый 27.07.2007, 07:12   #14
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

это оно и есть )

Строковые типы

[NATIONAL] CHAR(M) [BINARY]
Строка, всегда имеющая длину M (в случае, когда занесенное значение
короче, оно дополняется пробелами). M может лежать в пределах от 1 до
255. Приставка NATIONAL указывет на необходимость использования кодовой
таблицы, используемой по умолчанию.

[NATIONAL] VARCHAR(M) [BINARY]
Аналогично посленему, за исключением того, что длина значения может
быть произвольной (от 1 до 255 , а все пробелы в конце строки
удалаются.

TINYBLOB (TINYTEXT)
Тип BLOB или TEXT, длиной от 1 до 255 символов.

BLOB (TEXT)
Тип BLOB или TEXT, длиной от 1 до 65535 символов.

MEDIUMBLOB (MEDIUMTEXT)
Тип BLOB или TEXT, длиной от 1 до 16777215 символов.

LONGBLOB (LONGTEXT)
Тип BLOB или TEXT, длиной от 1 до 4294967295 символов.

http://www.opennet.ru/base/dev/mysql_types.txt.html
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 27.07.2007, 19:52   #15
shuhermayer
Пользователь
 
Регистрация: 20.07.2007
Сообщений: 14
По умолчанию

не понял, как мне это поможет избавиться от МЕМО в ДБгриде?

Надо при создании таблицы определять тип другой? а text не тип? если другой, то какой?

Поискал в инете, на сколько я понял ситуация такая же у чела была:
Цитата:
ВОПРОС:
"Здравствуйте!
У меня такая проблема: в компоненте TDBGrid содержимое полей типа Memo не отбражаются. Появляется надпись: (WIDEMEMO).
Подскажите, пожалуйста, каким образом мне все-таки отобразить, скажем, строку текста из этого поля и добавить многоточие?"

ОТВЕТ:
Сделай вычисляемое поле.
Дабл-кликаешь по таблице(TTable). Появляется окошечко. Райт-кликаешь по окошечку, появляется менюшечка. Выбираешь пункт "New Field"(по-моему так), и задаешь тип поля - Calculated. У таблицы пишешь обработчик события onCalculateFields(дельфы под рукой сечас нет, но примерно так).
Код:
s:=Твоя_таблица.FieldByName('Поле Мемо').AsString;
{Чего-нибудь делаешь со строкой, например оставляешь в ней первые демять символов}
Твоя_таблица.FieldByName('Вычисляем ое поле').AsString:=s;

Это верный ответ? а не могли бы Вы поподробнее для моего примера расписать код? что такое Поле мемо (что вместо этого писать), и что такое Вычисляемое поле?

Ну и собственно какой тип и где ставить? При создании или в ТТabale выбирать все поля и для каждого тип прописывать?

ПОМОГИТЕ, НЕ ПОНИМАЮ!

Последний раз редактировалось shuhermayer; 27.07.2007 в 22:07.
shuhermayer вне форума Ответить с цитированием
Старый 30.07.2007, 12:10   #16
shuhermayer
Пользователь
 
Регистрация: 20.07.2007
Сообщений: 14
По умолчанию

С тем наконец-то разобрался, большое спасибо.
Если можно, ещё один вопрос.
Как записать данные из Edit'a в БД?

Query2.SQL.Add('INSERT INTO vids (id_vid, vid_name, oboznach, img_sechenie, img_plan');
Query2.SQL.Add('SELECT MAX(id_vid)+1, '''+vid_name+''', '''+oboznach+''', '''+img_sechenie+''', '''+img_plan+''');
Query2.SQL.Add('FROM vids');

что не так? или как лучше сделать?
перед запросом текстовые поля присвоил соответствующим переменным.
shuhermayer вне форума Ответить с цитированием
Старый 30.07.2007, 13:48   #17
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

SELECT MAX(id_vid)
это можно сделать отдельно,
затем Insert c переданными параметрами
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 30.07.2007, 13:50   #18
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

для id_vid лучше выбрать тип 'счетчик' / 'автоинкремент' поля
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 30.07.2007, 16:18   #19
shuhermayer
Пользователь
 
Регистрация: 20.07.2007
Сообщений: 14
По умолчанию

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

Про МАКС знаю, счётчик тоже понятно, но это чуть позже доработаю, спасибо.

Последний раз редактировалось shuhermayer; 30.07.2007 в 16:27.
shuhermayer вне форума Ответить с цитированием
Старый 01.08.2007, 13:43   #20
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

Код:
Query2.SQL.Add('INSERT INTO vids (id, name, oboznach, sechenie, plan
values (:id, :name, :oboznach, :sechenie, :plan)');
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Ответ
Купить рекламу на форуме 20000 рублей в месяц

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связать Mysql c Delphi kiber0net0 Помощь студентам 4 02.09.2008 22:44
Delphi + удаленный MySQL Viteef БД в Delphi 5 30.05.2008 14:27
MySQL и Delphi, проблема... POPOV SQL, базы данных 1 28.12.2007 08:03
ФОТО из Delphi в БД MySQL chekanoff БД в Delphi 30 30.11.2007 21:24
MySQL+Delphi Toxa Общие вопросы Delphi 3 23.01.2007 18:24


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS