Вниз
Скачать: CL | DM;

Добрый вечер Мастера. Помогите c ADO и Oracle   Найти похожие ветки 

← →
nika_ufc ©   (2004-04-04 23:51) [0]

я с помощью TADOConnnection и TADOQuery питаюсь присоединится к Oracle.
 тут я приведу код:

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("Select * From Schemas.ХХХ.TABLE_NAME");
ADOQuery1.Open;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
with ADOConnection1 do
begin
 if not Connected then
  Open;
end;
end;

procedure TForm1.Exit1Click(Sender: TObject);
begin
if ADOQuery1.Active then
 ADOQuery1.Close
if ADOConnection1.Connected then
 ADOConnection1.Close;
Close;
end;


при нажатий на Button1 выпадает ошибка:
"Tavle or View does not exist"

а при закрытие формы выпадает CPU Debugger. кароче мое приложение не закривается благополучно


← →
Fay ©   (2004-04-04 23:56) [1]

скажи ему
alter session set current_schema = XXX
>> выпадает CPU Debugger
Провайдер от 8-ки?


← →
Fay ©   (2004-04-04 23:57) [2]

Sorry 8) Совсем не факт , что alter session тебя устроит 8)


← →
Fay ©   (2004-04-04 23:59) [3]

ADOQuery1.SQL.Add("Select * From ХХХ.TABLE_NAME");


← →
sniknik ©   (2004-04-05 00:00) [4]

может (судя по запросу) устроит ADOConnection1.GetTableNames


← →
nika_ufc ©   (2004-04-05 00:02) [5]

2Fay ©  
>>> Sorry 8) Совсем не факт , что alter session тебя устроит 8)
да он меня совсем не устраивает.


← →
Fay ©   (2004-04-05 00:05) [6]

[3] тоже не пашет ?!


← →
nika_ufc ©   (2004-04-05 00:11) [7]

я смотрел и даже на это выдает ошибку

procedure TForm1.FormCreate(Sender: TObject);
begin
with ADOConnection1 do
begin
 if not Connected then
  Open;
 ADOConnection1.GetTableNames(Listbox1.Items,False);
end;
end;

пишет:  "Data provider or Service returned an E_FAIL status"
 но при эгзекуций  я Database Login появляется


← →
nika_ufc ©   (2004-04-05 00:13) [8]

>>> [3] тоже не пашет ?!

тоже самое


← →
Fay ©   (2004-04-05 00:14) [9]

А права на такой SELECT имеются?


← →
Ломброзо ©   (2004-04-05 00:15) [10]

В MDAC имеется майкрософтовский OLE DB провайдер для ORACLE, используйте его. Родной - глючный и косячный.


← →
Fay ©   (2004-04-05 00:21) [11]

2Ломброзо ©
Мне так не показалось. Поставил от 9.2 - тогда только и стало мне счастье.


← →
nika_ufc ©   (2004-04-05 00:24) [12]

Fay ©   (05.04.04 00:14) [9]

>>>А права на такой SELECT имеются?
с поьошю других программ все ОК, что то с моей прогои


← →
Fay ©   (2004-04-05 00:30) [13]

Так. Мухи в синем углу, котлеты в красном. Сделай-ка  кнопочку типа ADOConnection.Connected := not ADOConnection.Connected;
А на Button1 :
ADOQuery1.SQL.Close;
ADOQuery1.SQL.Text := "select * from ХХХ.TABLE_NAME";
ADOQuery1.Open;


← →
nika_ufc ©   (2004-04-05 00:37) [14]

>>>>>>>Fay ©   (05.04.04 00:30) [13]
у ADOQuery1.SQL нет метода Close. наверное ты имел ввиду ADOQuery1.SQL.Clear ?

OK сейчас зделаю и скажу что получилось


← →
Fay ©   (2004-04-05 00:40) [15]

ADOQuery1.Close; Трудно догадаться?!


← →
nika_ufc ©   (2004-04-05 00:41) [16]

>>>>>Fay ©   (05.04.04 00:30) [13]
тоже самое: "Table or View does not exist"

не знаю, не знаю ....


← →
Fay ©   (2004-04-05 02:55) [17]

Так какой-же у тя провайдер? Если это страшная тайна, то досвиданиявсегохорошегоуспеховвтрудежелаюсчачтьяfay.


← →
nika_ufc ©   (2004-04-05 06:58) [18]

provider:
Microsoft OLE DB Provider for Oracle.


← →
nika_ufc ©   (2004-04-05 08:21) [19]

помогите же люди


← →
Sergey13 ©   (2004-04-05 08:21) [20]

ИМХО, провайдер не при чем. "Table or View does not exist" - нет прав на просмотр, если таблица все таки есть на самом деле.


← →
roottim   (2004-04-05 08:23) [21]

>Tavle or View does not exist
это означает, что нет у вас на нее прав... и более ничего...
необходимо дать грант роли(которую вы используйте) или вашей схеме...
а делфи тут явно непричем


← →
Fay ©   (2004-04-05 08:30) [22]

У меня (к примеру) до установки OLE Objects от 9.2 ругань была всякая разная. Если права есть, но не пашет - попробуй переставить клиента с OLE Objects (или как их там).


← →
serge35   (2004-04-05 11:17) [23]

select * from имя_пользователя.имя таблицы

Наверняка ты коннектишься не к той схеме, в которой
находится таблица. Или имя таблицы указано неверно.


← →
nika_ufc ©   (2004-04-07 18:56) [24]

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

при закрытие формы выпадает CPU Debugger (там полужирным шрифтом написана
ntdll.RtlSetUnicodeCallouts:
77FA144B ret $0004
ntdll.DbgBreakPoint:
77FA144B int 3
77FA144C ret //здесь зеленая стрелка
ntdll.DbgUserBreakPoint:
77FA144D int3

кароче мое приложение не закривается благополучно.
спасибо заранее за помочь



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.5 MB
Время: 0.023 c
1-1082145941
tivispider
2004-04-17 00:05
2004.05.02
Как можно узнать кодировку файла (txt)?


1-1082109344
forest
2004-04-16 13:55
2004.05.02
Как очистить TImage


9-1068310197
Cash
2003-11-08 19:49
2004.05.02
Взаимодействия спрайтов


3-1080812286
lightix
2004-04-01 13:38
2004.05.02
Переход на новую страницу в QuickReport


6-1078366060
gogi
2004-03-04 05:07
2004.05.02
Как узнать имя файла аттачмента не загружая письмо ?




   Наверх