Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка! [D7]


Cara ©   (2007-02-13 17:11:00) 

Добрый день. Через ADO с помощью INSERT INTO добавляю запись. Запись добавляется, но выдаётся ошибка "ADOQuery1: CommandText does not return a result set.". Что это? Как от неё избавиться?


Cara   (2007-02-20 11:09:00) [1]

Понял ошибку. Сам виноват. Вместо ADOQuery использовал сандартный  Query. Звыняйте. Зарапортовался.


Cara   (2007-02-20 11:03:00) [2]

Вот ConnectionString: "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\1\books_market.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False". Не редактировал. Оставил по умолчанию. Вроде бы работает и так. Соединение имеется в виду.


fd979   (2007-02-13 20:37:00) [3]


> проверь сам, при такой строке подключения сделай запрос
> к несуществующей(!!!) таблице, и посмотри на ошибку (можеш
> сюда ее привести).

А такой детализации никто не просил ))


sniknik   (2007-02-13 20:08:00) [4]

> Вместо Microsoft.Jet.OLEDB.4.0 можешь использовать и другие драйверы.
> Например:
> Provider=MSDASQL.1 ...
обман. не может... (если только система не "ну оччееень старая") проверь сам, при такой строке подключения сделай запрос к несуществующей(!!!) таблице, и посмотри на ошибку (можеш сюда ее привести).
DAO тоже начиная с 3.6 использует Jet (движок)... так что вариантов на самом деле и нет...

ну а строка у него действительно неправильная раз dbf ([6]) ищет...


fd979   (2007-02-13 19:14:00) [5]

Вставь сюда ConnectionString. Возможно ты не правильный драйвер использовал.

Подключение к мдб выглядит примерно так:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\market.mdb;Persist Security Info=False

Вместо Microsoft.Jet.OLEDB.4.0 можешь использовать и другие драйверы.

Например:

Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DBQ=C:\market.mdb;DefaultDir=C:\;Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;FIL=MS Access;FILEDSN=C:\Program Files\Common Files\ODBC\Data Sources\Market.dsn;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactio ns=0;Threads=3;UID=admin;UserCommitSync=Yes;"


Плохиш   (2007-02-13 18:27:00) [6]


> Cara ©   (13.02.07 18:15) [9]
> Знает. В ConnectionString написано!

А вот тебе я как-то не верю...


Desdechado   (2007-02-13 18:15:00) [7]

TADOConnection настроил? Подключил к TADOQuery?


Cara   (2007-02-13 18:15:00) [8]

Знает. В ConnectionString написано!


Игорь Шевченко   (2007-02-13 18:12:00) [9]


> БД называется market.mdb


А Delphi об этом знает ?


Cara   (2007-02-13 18:11:00) [10]

Я тоже. Но от этого не легче!
Запрос "INSERT INTO book (code, name) VALUES ('1', 1)". БД называется market.mdb. Так вот Delphi ищет book.dbf и т.д..


Плохиш   (2007-02-13 18:05:00) [11]


> Cara ©   (13.02.07 17:39) [4]
> теперь выдаёт " Table does not exist".

Ты знаешь, я ему верю...


Cara   (2007-02-13 17:39:00) [12]

Использую ExecSQL, теперь выдаёт " Table does not exist". Использую Access.


Cara   (2007-02-13 17:20:00) [13]

Спасибо. Разобрался.


Ega23   (2007-02-13 17:19:00) [14]

INSERT, UPDATE и DELETE - через ExecSQL
SELECT - через Open


umbra   (2007-02-13 17:17:00) [15]


> с помощью INSERT INTO добавляю запись.

а метод какой вызываете?


Наверх

Титульная страница Поиск, карта сайта Написать письмо