Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++ Builder и базы данных

Войти
Регистрация
Восстановить пароль
 
 
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
#1

Ошибка - C++ Builder БД

08.06.2010, 23:56. Просмотров 951. Ответов 19
Метки нет (Все метки)

Выскакивает ошибка когда в ADODataSet1 Active ставлю true
Параметр TadeUnion.ID не имеет значения по умолчанию.
В ADODataSet1 в CommandText вписал:
SQL
1
SELECT * FROM Home, TradeUnion WHERE Home.ID=TadeUnion.ID;
В базе данных имеются таблицы
Home - Surname, FirstName, MiddleName, ID, Department, Position
TradeUnion - ID, Introduction
связаные по столбцу ID
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2010, 23:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка (C++ Builder БД):

Ошибка доступа к памяти, ошибка компонентов .bpl - C++ Builder
Использую в проекте библиотеку bass.dll. И при работе с ней у билдера часто возникают ошибки. Либо ошибка доступа к памяти, либо ошибка...

Ошибка в коде взаимодействия клиента и сервера на основе протокола TCP/IP (ошибка в коде) - C++ Builder
Задание: Осуществить взаимодействие клиента и сервера на основе протокола TCP/IP. Реализовать параллельное соединение с использованием...

IIS- asp ошибка: HTTP 500.100 - Внутренняя ошибка сервера - ошибка ASP Internet Information Services - C# ASP.NET
Привет! Конфигурация win2000pro sp2, стандартный IIS, IE 5. При попытке обратиться к сценарию(asp) получаю ошибку: <пропуск> ......

1C 8.x Ошибка при чтении изменений при обмене РИБ: Ошибка при вызове метода контекста (ПрочитатьИзменения): Ошибка записи! - 1С
Доброго всем времени суток! подскажи пожалуйста как исправить ошибку: Ошибка при чтении изменений при обмене РИБ: Ошибка при вызове...

Ошибка при добавлении в файл. Ошибка 101: Ошибка записи на диск (Error 101: Disk write error). - Turbo Pascal
Здравствуйте, возникла проблема такого плана. Нужно произвести добавление записи в файл, но после успешного создания и чтения вылазиет...

Server 2003 Загружается до окна приветствия и вылетает ошибка: isass.exe - Системная ошибка - Windows Server
Ребята, помогите кто может... весь день бьюсь безрезультатно... с утра пришёл на работу а сервак не пингуется... загружается до...

19
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
09.06.2010, 18:28 #2
А Home.ID имеет значение по умолчанию ?
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
09.06.2010, 19:14  [ТС] #3
Цитата Сообщение от Airhand Посмотреть сообщение
А Home.ID имеет значение по умолчанию ?
стоит "0"
0
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
09.06.2010, 22:47 #4
Тогда у TadeUnion.ID тоже должно быть значение по умолчанию.
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
09.06.2010, 23:52  [ТС] #5
Цитата Сообщение от Airhand Посмотреть сообщение
Тогда у TadeUnion.ID тоже должно быть значение по умолчанию.
значения и настройки в столбцах ид идентичны
0
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
09.06.2010, 23:56 #6
Ты же в первом посте сказал, что у поля нет значения по умолчанию.
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
10.06.2010, 00:11  [ТС] #7
Цитата Сообщение от Airhand Посмотреть сообщение
Ты же в первом посте сказал, что у поля нет значения по умолчанию.
ну в аксесе там стоит "0" я его не менял

Добавлено через 1 минуту
C++
1
2
3
4
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("INSERT INTRO CHILDREN VALUES('"DBEdit1->Text"','"DBEdit18->Text"','"DBEdit19->Text"','"DBEdit20->Text"','"DBEdit21->Text"')");
ADOQuery1->Open();
а что здесь не правильно написано?
0
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
10.06.2010, 11:26 #8
Есть запросы, которые выполняются при помощи Open (всякие select), а у тебя другой запрос(всякие insert, update).

Добавлено через 4 минуты
Финальный запрос надо выполнять при помоши ExecSQL().
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
10.06.2010, 16:57  [ТС] #9
Цитата Сообщение от Airhand Посмотреть сообщение
Есть запросы, которые выполняются при помощи Open (всякие select), а у тебя другой запрос(всякие insert, update).

Добавлено через 4 минуты
Финальный запрос надо выполнять при помоши ExecSQL().
а как это, через какой копонент?
0
Lord_Voodoo
Супер-модератор
8596 / 2215 / 61
Регистрация: 07.03.2007
Сообщений: 10,766
Завершенные тесты: 1
10.06.2010, 17:00 #10
ADOQuery1->Open(); - использутеся для запросо, которые возвращают курсор на данные, т.е. select, остальные запросы сильно жаждуют метода ExecSQL().
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
10.06.2010, 17:04  [ТС] #11
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
ADOQuery1->Open(); - использутеся для запросо, которые возвращают курсор на данные, т.е. select, остальные запросы сильно жаждуют метода ExecSQL().
а как переделать вот этот код, ато я не пойму:
C++
1
2
3
4
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("INSERT INTRO CHILDREN VALUES('"DBEdit1->Text"','"DBEdit18->Text"','"DBEdit19->Text"','"DBEdit20->Text"','"DBEdit21->Text"')");
ADOQuery1->Open();
0
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
10.06.2010, 17:31 #12
Не нодо Open он делает то же самое, что и Active = true. Нужно ADOQuery там есть метод ExecSQL(). Прочитай про него в хелпе и все вопросы сами отпадут.
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
10.06.2010, 17:57  [ТС] #13
Цитата Сообщение от Airhand Посмотреть сообщение
Не нодо Open он делает то же самое, что и Active = true. Нужно ADOQuery там есть метод ExecSQL(). Прочитай про него в хелпе и все вопросы сами отпадут.
Call ExecSQL to execute the SQL statement currently assigned to the SQL property. Use ExecSQL to execute queries that do not return a cursor to data (such as INSERT, UPDATE, DELETE, and CREATE TABLE).
ExecSQL returns an integer value reflecting the number of rows affected by the executed SQL statement.
Note: For SELECT statements, call Open instead of ExecSQL or set the Active property to true.
To speed performance, an application should ordinarily prepare the query by setting the Prepared property to true before calling ExecSQL for the first time.

пожалуйста пример, ато я с этого ничего не понял
0
Airhand
502 / 458 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
10.06.2010, 18:18 #14
Вот пример:
Код
dbf.Query->Active=false;
dbf.Query->SQL->Clear();
dbf.Query->SQL->Append(st);
try
{
    dbf.Query->ExecSQL();
}
catch(const Exception& e)
{
    Message("Runtime error: "+e.Message);
    return;
}
catch(...)
{
    return;
};
Добавлено через 2 минуты
dbf имеет следующий тип:
DBRequest dbf;
1
Hovercat
11 / 11 / 1
Регистрация: 23.12.2009
Сообщений: 300
10.06.2010, 19:03  [ТС] #15
Цитата Сообщение от Airhand Посмотреть сообщение
Вот пример:
Код
dbf.Query->Active=false;
dbf.Query->SQL->Clear();
dbf.Query->SQL->Append(st);
try
{
    dbf.Query->ExecSQL();
}
catch(const Exception& e)
{
    Message("Runtime error: "+e.Message);
    return;
}
catch(...)
{
    return;
};
Добавлено через 2 минуты
dbf имеет следующий тип:
DBRequest dbf;
оно мне ошибку выдало
[BCC32 Error] Unitl .cpp(35): E2451 Undefined symbol 'dbf'
[BCC32 Error] Unitl .cpp(37): E2451 Undefined symbol 'st'
[BCC32 Error] Unitl .cpp(44): E2268 Call to undefined function 'Message'
0
10.06.2010, 19:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2010, 19:03
Привет! Вот еще темы с ответами:

Ошибка разбора XML/ Ошибка при вызове метода контекста (Прочитать) - 1С
1C 8.2 Документооборот КОРП 1.2 Текст ошибки {ОбщийМодуль.АвтозаполнениеШаблоновФайловКлиентСервер.Модуль(616)}: Ошибка при вызове...

Interbase Ошибка SQL запроса , в базе работает, а через IBQuery в Delphi ошибка - Delphi БД
В Combobox загружены имена организаций. Нужно выполнить запрос на вывод всех полей таблицы организаций при выборе имени в Combobox. При...

ASP: Response.Redirect - не работает, ошибка `500 - Внутренняя ошибка сервера' - C# ASP.NET
Всем привет! Есть в ASP-сраничке такой код: Response.Redirect 'page1.asp?ReturnTo=page2.asp' Эта конструкция работала на IIS 4,...

Django Ошибка доступа (403) Ошибка проверки CSRF. Запрос отклонён - Python
На хостинге разместил сайт и не могу войти в админку, т.к. возникает 403 ошибка "Ошибка доступа (403). Ошибка проверки CSRF. Запрос...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.