Форум: "Базы";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Внизinsert into....select Найти похожие ветки
← →
denis24 (2004-11-10 16:01) [0]Почему кагда я пытаюсь вы полнить сабж через Adoquery пишет"Текущий проводник не поддерживает возврат нескольких наборов записей в результате одной опрерации"?
← →
Johnmen © (2004-11-10 16:05) [1]Как пытаешься?
← →
diabolik_krsk (2004-11-10 16:06) [2]Код приведи, который пишешь.
← →
denis24 (2004-11-10 16:15) [3]DataModule2.ADOQueryDiagnoz_tblrecomendations.close;
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.clear;
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("insert into temp_recomendations ");
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("select tblDiagnoz_Recomendations.id_recomendations, tblRecomendations.name_recomendations from tblRecomendations, tblDiagnoz_Recomendations");
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("where tblDiagnoz_Recomendations.id_diagnoz=:p1 and ");
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("tblRecomendations.id_recomendations=tblDiagnoz_Recomendations.id_ recomendations");
DataModule2.ADOQueryDiagnoz_tblrecomendations.Parameters.ParamByName ("p1").Value :=DataModule2.ADOQueryMain_diagnoz.fieldbyname("id_diagnoz").AsInteger;
DataModule2.ADOQueryDiagnoz_tblrecomendations.Open;
← →
Johnmen © (2004-11-10 16:27) [4]А почему Open ? Что "открыть" предполагаешь ?
PS F1 помогает...
← →
msguns © (2004-11-10 16:27) [5]Переведем на русский эту абракадабру:
INSERT INTO Temp
SELECT tblD.id, tblR.Name FROM tblR, tblD
WHERE tblD.id=:p1 AND tblR.id=tblD.id
Получаем запрос на вставку.
Затем читаем (после перевода, ессно):
ParamByName("p1").value := FieldByName(id).AsInteger;
и, наконец,
OPEN
!!!
А ведь причина ошибки, ИМХО, в том, что за частоколом кода (все эти DataModule2... и зубодробительные названия таблиц и полей) ни хрена не видно этой опечатки.
Грустно, девочки ;((
← →
denis24 (2004-11-10 16:28) [6]Еще запрос
sql.add("SELECT id_main, count(id_diagnoz) AS count_diagnoz INTO temp");
sql.add("FROM tblmain_diagnoz GROUP BY id_main");
на первой строке пишет accses violation on addres... in module
msjet40.dll
Потом пишет сабж.Но всеравно создает таблицу temp с нужными данными.
Стоит m_dac 2.7
База access2000
BDE 5.01
← →
Соловьев © (2004-11-10 16:31) [7]
> BDE 5.01
Мдя... ADO юзай.
← →
Соловьев © (2004-11-10 16:32) [8]
> DataModule2.ADOQueryDiagnoz_tblrecomendations.Open;
Хотя АДО... :)
← →
Johnmen © (2004-11-10 16:38) [9]>denis24 (10.11.04 16:28) [6]
>SELECT ... INTO ... FROM ... GROUP BY ...
Где ты этого начитался?
← →
denis24 (2004-11-10 16:42) [10]Посыпаю голову пеплом.........
Но при "select into ....." access violation все равно остался
← →
Соловьев © (2004-11-10 16:47) [11]
> >denis24 (10.11.04 16:28) [6]
> >SELECT ... INTO ... FROM ... GROUP BY ...
>
> Где ты этого начитался?
это нормально :) Сохраняются результаты в таблицу.
← →
Соловьев © (2004-11-10 16:48) [12]
> DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("insert
> into temp_recomendations ");
DataModule2.ADOQueryDiagnoz_tblrecomendations.sql.add("insert
into temp_recomendations (field1, field2)");
← →
denis24 (2004-11-10 17:02) [13]Соловьев дал
http://delphimaster.net/view/3-1099920344/
← →
Johnmen © (2004-11-10 17:05) [14]
> Соловьев © (10.11.04 16:47) [11]
> это нормально :) Сохраняются результаты в таблицу.
Вот мне и интересно, где про это написано. А то, видимо, что-то упустил...:)
← →
Соловьев © (2004-11-10 17:08) [15]
> Вот мне и интересно, где про это написано. А то, видимо,
> что-то упустил...:)
хелп по Access :)
← →
denis24 (2004-11-10 17:12) [16]to Соловьев © (10.11.04 16:48) [12]
Это да
но перед этим создать ее нужно а потом в цикле забивать.....
← →
Соловьев © (2004-11-10 17:14) [17]
> Это да
> но перед этим создать ее нужно а потом в цикле забивать.....
В смысле? Чего-то я не догоню... Т.е. ты вставляешь в таблицу которой нет? Если да, то почему??????????????????????????????????????
← →
Vlad © (2004-11-10 17:15) [18]
> Вот мне и интересно, где про это написано. А то, видимо,
> что-то упустил...:)
у меня этот файл называется JETSQL35.HLP
← →
denis24 (2004-11-10 17:23) [19]если делать без select...into.....from....group by
то ,если я правильео понимаю делаем так
create table temp (id_diagnoz numeric(16,0),count_diagnoz numeric(16,0))
.
.
adoquery1.sql.add(select id_main, count(id_diagnoz) AS count_diagnoz FROM tblmain_diagnoz GROUP BY id_main)
.
.
while adoquery1.eof=false do
.
.
adoquery2.sql.add("insert into temp values(adoquery1.fieldbyname("id_diagnoz").asinteger+","+adoquery1.fieldbyname("name_diagnoz").asinteger
adoquery2.execsql
adoquery1.next;
.
.
..
← →
Соловьев © (2004-11-10 17:29) [20]
> если делать без select...into.....from....group by
> то ,если я правильео понимаю делаем так
> create table temp (id_diagnoz numeric(16,0),count_diagnoz
> numeric(16,0))
> .
> .
> adoquery1.sql.add(select id_main, count(id_diagnoz) AS count_diagnoz
> FROM tblmain_diagnoz GROUP BY id_main)
> .
> .
> while adoquery1.eof=false do
> .
> .
> adoquery2.sql.add("insert into temp values(adoquery1.fieldbyname("id_diagnoz").asinteger+","+adoquery1.fieldbyname("name_diagnoz").asinteger
>
> adoquery2.execsql
> adoquery1.next;
> .
> .
> ..
А какого????? Блин одна конструкция select...into.....from....group by все это делает.
← →
denis24 (2004-11-10 17:52) [21]так да!
но вылетает access violation
Может настройки какието adoconnection(они у меня по умолчанию)
← →
Johnmen © (2004-11-10 17:53) [22]>Соловьев © (10.11.04 17:08) [15]
>хелп по Access :)
>Vlad © (10.11.04 17:15) [18]
>у меня этот файл называется JETSQL35.HLP
Благодарю. Аксеса у меня нет, а файл есть...:)
← →
Соловьев © (2004-11-10 18:04) [23]
> но вылетает access violation
Приведи полный код при использовании select...into.....from....group by
← →
msguns © (2004-11-10 18:05) [24]>Johnmen © (10.11.04 17:53) [22]
>>Vlad © (10.11.04 17:15) [18]
>>у меня этот файл называется JETSQL35.HLP
>Благодарю. Аксеса у меня нет, а файл есть...:)
Блин ! А у меня есть аксес, но нет файла !!!
Если не трудно, намыль, Жень мне этот долбанный JETSQL35(Лучше 40). Все мои попытки найти его в MSDN ни к чему не привели ;((
Или руки кривые, или глаза косые. А скорее всего и то и другое ;))
Вот и приходится мучится интуитивно. Например, вот прорюхал, что для контекстного поиска надо в ADO давать
Field LIKE "John%",
а в самом аксесе
Field LIKE "John*"
Ну супер просто !!! Час гробился ! Без доки-то ! Хэлп по аксесу
это вообще что-то. Предполагается, что прогер (или узер ?) все должен делать через конструктор или его изумительных мастеров.
Сори за офтоп, конечно, но неудобно ветку рожать по этому вопросу - люди уже смеются небось ;))
← →
Соловьев © (2004-11-10 18:14) [25]
> JETSQL35.HLP
jetsql40.chm поисчи
← →
msguns © (2004-11-10 18:22) [26]>Соловьев © (10.11.04 18:14) [25]
Блин, поставил сидюк с инсталляхой офиса и там нашел !!!!
Почему при инстале не переписался ума не приложу. Вроде непьяный был. Мне каааэтся ;)))
← →
msguns © (2004-11-10 18:24) [27]Удалено модератором
Примечание: Личная переписка
← →
Соловьев © (2004-11-10 18:24) [28]Удалено модератором
Примечание: Личная переписка
← →
msguns © (2004-11-10 18:26) [29]Удалено модератором
Примечание: Личная переписка
← →
Соловьев © (2004-11-10 18:27) [30]Удалено модератором
Примечание: Личная переписка
← →
denis24 (2004-11-10 19:00) [31]SELECT tblMain_diagnoz.id_main, Count(tblMain_diagnoz.id_diagnoz) AS [Count_diagnoz] into temp FROM tblmain_diagnoz GROUP BY tblmain_diagnoz.id_main
Взят из конструктора access в нем работает на ура
← →
Соловьев © (2004-11-10 19:04) [32]Это понятно, а делфи как ты его запускаешь - код только полный.
← →
denis24 (2004-11-10 19:09) [33]DataModule2.ADOQuery2.close;
DataModule2.ADOQuery2.sql.Clear;
DataModule2.ADOQuery2.SQL.Add("SELECT tblMain_diagnoz.id_main, Count(tblMain_diagnoz.id_diagnoz) AS [Count_diagnoz] into temp");
DataModule2.ADOQuery2.sql.add("FROM tblmain_diagnoz GROUP BY tblmain_diagnoz.id_main");
DataModule2.ADOQuery2.ExecSQL;
← →
Соловьев © (2004-11-10 19:20) [34]
> DataModule2.ADOQuery2.ExecSQL;
DataModule2.ADOQuery2.Open;
← →
denis24 (2004-11-10 19:49) [35]Дебугер показывает эту ошибку на первой строке запроса,не доходя до open.Без count все работает
← →
denis24 (2004-11-10 20:02) [36]все решил
удалил и создал adoquery
← →
denis24 (2004-11-11 10:27) [37]Эта ошиба выскакивает только когда запускаю проект в среде делфи,
при запуске чистого экзешника ее нет...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.042 c