|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.10.2008, 07:51 | #1 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
Добавление данных в таблицы Interbase
Нужно добавить данные в Interbase таблицы,данные вводятся с формы...
Для добавления написал следующее: procedure TForm2.Button3Click(Sender: TObject); begin ibquery1.SQL.Clear; ibquery1.SQL.Append('INSERT INTO "Devices" ("Name") VALUES ("edit1.Text")'); ibquery1.SQL.Append('INSERT INTO "DeviceTree" ("ParentId") VALUES ("edit2.text")'); ibquery1.SQL.Append('INSERT INTO "Devices" ("Id") VALUES ("edit3.text")'); end; не работает... Нужно чтобы в соответствующие поля соответствующих таблиц добавлялись значения которые будут введены в соответствующих полях формы(edit1...edit2...и т.д.) Заранее спасибо. Не судите слишком строго я только учусь и разбираюсь в этом во всем. |
22.10.2008, 08:04 | #2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
1. Что за SQL.Append? Вдумайтесь. Мало ли что у вас там (в SQL.Text) было, а вы "вструмили" где-то между чем-то свои строки...
SQL.Text:=('.....') !!! И еще. SQL команду вы определили. А кто запустит ее на исполнение? EXECSQL 2. Формат команды INSERT INTO TABLE (pole1,pole2,..polen) VALUES (val1,val2,..valn). Эта команда вставляет ЗАПИСЬ, а не отдельные поля... Пример из руководства по IB SQL: Цитата:
... VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(edit2.Text)+','+...+')'; То есть строку составляем из "кусочков". И никаких двойных кавычек!!! Только апострофы! Последний раз редактировалось mihali4; 22.10.2008 в 08:17. |
|
22.10.2008, 08:09 | #3 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
и как быть дальше тогда?
конкретный совед дать можете? просто не все данные будут с формы заноситься ,а только значения отдельных полей... |
22.10.2008, 08:21 | #4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Если вам эта элементарщина непонятна - может ну его, это программирование? Или, может, взять-таки умную книгу, раз живого человека не понимаете... |
|
22.10.2008, 08:24 | #5 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
все все...понял понял)сори)я просто отредактированное сообщение не заметил просто)
|
22.10.2008, 08:37 | #6 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
INSERT INTO "Devices" (Devices_Id,Devices_Name) VALUES ('+QuotedStr(edit1.Text)','+QuotedS tr(edit3.Text)');
вставил такую строку...не работает... |
22.10.2008, 08:42 | #7 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Я же сказал - никаких двойных кавычек... Во-первых, имена таблиц и полей в кавычки или апострофы НЕ ЗАКЛЮЧАЮТСЯ! Во-вторых, похоже, вы как тот голый, который в баню боится опоздать QuotedStr(edit1.Text)+',' И показывайте целиком procedure TForm2.Button3Click... Или, по крайней мере, указывайте признаки того, что у вас "а у меня ничего не работает". Гадать, что там у вас не работает, под силу только экстрасенсам, а они у нас, как известно, в бессрочном отпуске... Последний раз редактировалось mihali4; 22.10.2008 в 08:44. |
|
22.10.2008, 08:47 | #8 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
procedure TForm2.Button3Click(Sender: TObject);
begin ibquery1.SQL.Clear; INSERT INTO Devices (Devices_Id,Devices_Name) VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(edit3.Text)+'); execsql end; вот такая у меня там фигня...и вот вусе равно не канает) |
22.10.2008, 08:54 | #9 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
У вас в самом начале грамотнее было написано... К чему относится "execsql"? Может, все таки к ibquery1? Ну, так и пишите - ibquery1.execsql; А текст SQL, который INSERT INTO Devices (Devices_Id,Devices_Name) VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(edit3.Text) +') Вы его ЧЕМУ присваиваете? Посмотрите свой первый пост... З.Ы. Вы вообще, хоть разок во встроенный хэлп заглядывали? А зря... Вот метод "тыка" тут явно "не катит"... Поскольку вы работаете с интербэйсом, значит он у вас установлен, а посему не поленитесь заглянуть в документацию: ...\InterBase\doc Процентов 80 ваших вопросов отпадут сами собой (даже с табуретки прыгать не придется ) Последний раз редактировалось mihali4; 22.10.2008 в 09:02. |
|
22.10.2008, 09:01 | #10 |
Пользователь
Регистрация: 17.10.2008
Сообщений: 26
|
procedure TForm2.Button3Click(Sender: TObject);
begin ibquery1.SQL.Clear; ibquery1.SQL.INSERT INTO Devices (Devices_Id,Devices_Name) VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(edit3.Text)+'); ibquery1.execsql end; так чтоли? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как мне прицепить БД(таблицы) с Interbase к Delphi | hijke | БД в Delphi | 9 | 18.11.2008 13:32 |
Добавление в 2 таблицы | Dissonance | БД в Delphi | 5 | 04.06.2008 23:54 |
Программное создание таблицы в InterBase | Proof | БД в Delphi | 2 | 05.05.2008 21:05 |
Interbase, добавление записи | Алёна | БД в Delphi | 9 | 25.03.2008 11:54 |
Как из Delphi залезть в системный таблицы InterBase | Leee | БД в Delphi | 0 | 21.04.2007 21:04 |