SQLQuery1: Circular datasource references are not allowed

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

SQLQuery1: Circular datasource references are not allowed

Сообщение mrkaban » 01.09.2016 08:24:13

Здравствуйте, сразу предупреждаю, что я новичок.

Добавляю компоненты TSQLite3Connection, TDataSource, TSQLTransaction, TSQLQuery.

sqlite3.dll скопировал в папку проекта.

SQLite3Connection1
DatabaseName = test.sql
CharSet = UTF8
Transaction = SQLTransaction1

SQLTransaction1
Database = SQLite3Connection1

SQLQuery1
Database = SQLite3Connection1
Datasource = DataSource1

DataSource1
DataSet = SQLQuery1

Вылазит ошибка "SQLQuery1: Circular datasource references are not allowed."

Подскажите пожалуйста, в чем мой косяк?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
mrkaban
новенький
 
Сообщения: 55
Зарегистрирован: 28.05.2016 09:48:18

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение Снег Север » 01.09.2016 08:26:24

В SQLQuery1 убрать Datasource = DataSource1, в вашем случае там ничего не должно быть назначено
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 3053
Зарегистрирован: 27.11.2007 16:14:47

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение DYUMON » 01.09.2016 08:49:05

я же тебе там в блоге написал ответ, хотя там ты не то написал
Аватара пользователя
DYUMON
постоялец
 
Сообщения: 234
Зарегистрирован: 11.03.2009 13:32:54

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение mrkaban » 01.09.2016 09:17:02

DYUMON писал(а):я же тебе там в блоге написал ответ, хотя там ты не то написал

оо)) delphi-dev.ru? да, я опечатку допустил в комментарии.

Добавлено спустя 14 минут 20 секунд:
Re: SQLQuery1: Circular datasource references are not allowed
Убрал в SQLQuery1 Datasource = DataSource1.

добавил следующую строчку к событию нажатия по кнопке
SQLQuery1.Locate('Name','Архиватор WinRAR',[loCaseInsensitive, loPartialKey]);

при нажатии на неё пишет "Operation cannot be performed on an inactive dataset".

Добавлено спустя 16 минут 13 секунд:
Re: SQLQuery1: Circular datasource references are not allowed
а если вместо поиска попробовать доступ к данным

SQLQuery1.Open; // открываем данные
SQLQuery1.First; // становимся на первую запись
while not SQLQuery1.EOF do // цикл пока не конец набора данных
begin
// обрабатываем данные
SQLQuery1.Next; // переходим на следующую запись
end;
SQLQuery1.Close; // закрываем данные

тогда пишет ошибку "SQL statement not set."

PS: Отдельное спасибо за Вашу статью!!!
mrkaban
новенький
 
Сообщения: 55
Зарегистрирован: 28.05.2016 09:48:18

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение DYUMON » 01.09.2016 09:47:58

SQLQuery1.open;
Аватара пользователя
DYUMON
постоялец
 
Сообщения: 234
Зарегистрирован: 11.03.2009 13:32:54

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение mrkaban » 01.09.2016 10:02:19

DYUMON писал(а):SQLQuery1.open;

Сделал
Код: Выделить всё
SQLQuery1.Open;
SQLQuery1.Locate('Name','Архиватор WinRAR',[loCaseInsensitive, loPartialKey]);
SQLQuery1.Close;


тогда пишет ошибку "SQL statement not set."
mrkaban
новенький
 
Сообщения: 55
Зарегистрирован: 28.05.2016 09:48:18

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение DYUMON » 01.09.2016 10:18:45

а ты у sqlquery добавил sql запрос в sqlquery1.sql.text:='запрос'
Аватара пользователя
DYUMON
постоялец
 
Сообщения: 234
Зарегистрирован: 11.03.2009 13:32:54

Re: SQLQuery1: Circular datasource references are not allowe

Сообщение mrkaban » 01.09.2016 11:10:55

Всем спасибо большое, разобрались, я взял sql дамп из mysql и пытался его использовать.

Создал базу через SQLiteStudio и всё заработало!
mrkaban
новенький
 
Сообщения: 55
Зарегистрирован: 28.05.2016 09:48:18


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 240

Рейтинг@Mail.ru