Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.21;
Скачать: CL | DM;

Вниз

ADO + Paradox   Найти похожие ветки 

 
delphicoder   (2008-03-23 06:22) [0]

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

Почему то не работает удаление и добавление в таблицу... мож я чтото не так делаю?

Хотя выборка пашет...

const cs = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=.\Data\;Extended Properties = Paradox 7.x; Mode = Read|Write|Share Deny None; Persist Security Info = False";

procedure TForm1.SpeedButton8Click(Sender: TObject);
var   myQuery : TADOQuery;
begin

  myQuery := TADOQuery.Create(nil);
  myQuery.ConnectionString := cs;
  myQuery.SQL.Clear;
  myQuery.SQL.Text := "select * from K_m_data07.db"; - это работает
  myQuery.Open;

 myQuery.RecordCount;
  if myQuery.RecordCount > 0 then
   begin
    myQuery.Close;
    myQuery.SQL.Clear;
    myQuery.SQL.Text := "delete * from K_m_data07.db"; - это не работает пишет что невозможно удаление записей из указаных таблиц
    myQuery.ExecSQL;
   end

         myQuery.SQL.Clear;
          myQuery.SQL.Text := "insert into K_m_data07.db (Text) values("""+path_+""")"; - это тоже не работает, Ошибка синтаксиса в инструкции Insert Into
          myQuery.ExecSQL;

Зарание спасибо


 
Виталий Панасенко(дом)   (2008-03-23 10:30) [1]

кажись, БДЕ все равно нужно ставить..АДО без БДЕ умеет только читать Парадокс


 
sniknik ©   (2008-03-23 13:44) [2]

да, только не ADO а Jet, без BDE  с парадоксом работает в ридонли режиме. а может и с установленным BDE также если в реестре прописано его не использовать.

и вот это
> Mode = Read|Write|Share Deny None
в строке лишнее, он и по умолчанию открывает на чтение/запись (если возможно), дополнительно выставлять только путаться... (был бы случая какой особый типа чтение с CD, тогда выставить только чтение было бы к месту)
убери это в общем.

> Ошибка синтаксиса в инструкции Insert Into
значит скорее всего так и есть, смотри что у тебя получается за запрос, реально, после подстановки и ищи ошибку синтаксиса...
а еще лучше используй параметры (обязательно практически, для строк, дат, и не целых чисел).


 
sniknik ©   (2008-03-23 13:47) [3]

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


 
Anatoly Podgoretsky ©   (2008-03-23 16:19) [4]

А это зачем, myQuery.SQL.Clear;, думаешь так надежнее будет присвоение.
Используй параметры раз, а после того как поставишь БДЕ откажись от OLEDB провайдера.


 
delphicoder   (2008-03-24 00:21) [5]

> А это зачем, myQuery.SQL.Clear;, думаешь так надежнее будет присвоение.

Нет ) Привычка просто. Учту, спасибо

ОК, я смысл впринципи понял. Большое спасибо.


 
Германн ©   (2008-03-24 01:27) [6]


> delphicoder   (24.03.08 00:21) [5]
>
> > А это зачем, myQuery.SQL.Clear;, думаешь так надежнее
> будет присвоение.
>
> Нет ) Привычка просто. Учту, спасибо
>

Угу. И эта "привычка" имеет корни в Д1. Где свойство Text для компоненты TQuery было:
Declaration

property Text: PChar;

Description

Run-time and read only. The Text property holds the actual text of the SQL query sent to the Borland Database Engine. In general, you should not need to examine this property. However, if you encounter problems with an SQL statement, you may want to inspect the Text property to be sure that the statement is as expected.



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

Текущий архив: 2008.09.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
8-1185991832
DelphiKettle
2007-08-01 22:10
2008.09.21
MediaPlayer


3-1206026929
tytus
2008-03-20 18:28
2008.09.21
Select from ( функция которая возвращает строку) /10g


15-1217317252
Раб отник
2008-07-29 11:40
2008.09.21
Работа для фрилансера-программиста


15-1217657301
ggg
2008-08-02 10:08
2008.09.21
Исходники преферанса


15-1217577898
Ega23
2008-08-01 12:04
2008.09.21
переменные окружения и CGI в Delphi