![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите разобраться новичку в БД [D6, Paradox]
Signed © (2003-09-26 00:42:00)
1) К пример я создал БД Paradox, с помощью Database Desktop, и приложение которое с это базой работает.
Какие требования к ПО должны быть на том копьютере, на который я хочу Перенести программу с БД
2) Пишу SQL запрос в Query
Query1.SQL.Clear;
{1} Query1.SQL.Add("INSERT INTO Famaly (Name,Surname) VALUES (""Ivan"",""Ivanovich"");");
{2} Query1.SQL.Add("SELECT * FROM Famaly;");
Query1.Active:=true;
на строке {2}, в ран тайме выдаёт ошибку ссылаясь на EDBEngineError (Invalid use of keyword \n Token: SELECT)
если исключить {1} или {2} всё работает нормально
Особо ногами за глупые вопросы не бейте, тоько начинаю с БД и SQL возиться
Sergey_Masloff (2003-09-26 06:47:00) [1]
Signed (26.09.03 00:42)
1) Windows + BDE (да, да BDE не стоит на каждом компьютере с Windows как почему-то считает 99% начинающих)
2)В запросе допустим только 1 стейтмент- или уж инсерт или уж селект.
>Да и еще если не пройдет Insert то добавь компонент UpdateSQL
>Свяжи его с Query и пробуй...
блин, ну и совет. С чего это Insert не пойдет и на фига тут UpdateSQL? И чем от поможет, неужели ты думаешь что UpdateSQL делает что-то отличное от InsertInto () values() ?????
mfender (2003-09-26 02:35:00) [2]
Да. Еще. Не забывай Query1.Close делать перед тем, как затереть в ней все. И в конце, как написал Alek_1 (26.09.03 01:47) [2]ExecSQL, если делаешь Insert or Update, и Open - если SELECT.
Alek_1 (2003-09-26 01:57:00) [3]
Да и еще если не пройдет Insert то добавь компонент UpdateSQL
Свяжи его с Query
и
пробуй
Query1.Insert;
Query1["Name"]:="Ivan";
Query1["Surname"]:="Ivanovich";
with DataSource1.DataSet do begin
if State in [dsEdit,dsInsert] then Post;
Query1.ApplyUpdates;
Query1.CommitUpdates;
end;
работает, но долго оссобено когда большая таблица!
Alek_1 (2003-09-26 01:47:00) [4]
Когда выполняешь Insert не забывай прописывать не
Query1.Active:=true (Query1.Open) а
Query1.ExecSQl
и вторую строку в даном запросе никчему выполнять.
Выполни insert а потом переоткрой query с select-ом
mfender (2003-09-26 00:59:00) [5]
> 1) К пример я создал БД Paradox, с помощью Database Desktop,
> и приложение которое с это базой работает.
> Какие требования к ПО должны быть на том копьютере, на который
> я хочу Перенести программу с БД
Windows.
> на строке {2}, в ран тайме выдаёт ошибку ссылаясь на EDBEngineError
> (Invalid use of keyword \n Token: SELECT)
> если исключить {1} или {2} всё работает нормально
Вот исключи из запроса вторую строку, если что-то хочешь добавить. Исключи первую, если есть желание что-то добыть.
Ну и с парадохом первая строка у тебя все равно не прокатит BDE.