| | | | |
Немного об использовании ADO в Delphi. | Полный текст материала
Другие публикации автора: Эльчин Азиз Али оглы Азизов
Цитата или краткий комментарий: «... ADO (Active Data Objects) - это высокоуровневый компонент технологии доступа к данным от Microsoft. (т.н. MDAC - Microsoft Data Access Components) Другие компоненты - это старый добрый ODBC и новый низкоуровневый интерфейс OLE DB.
Данными для ADO могут быть как привычные таблицы Access или серверные базы MS SQL или Oracle, так и несколько экзотичные Microsoft Active Directory Service, XML-файлы и т.п. ...» |
Важно:- Страница предназначена для обсуждения материала, его содержания, полезности, соответствия действительности и так далее. Смысл не в разборке, а в приближении к истине :о) и пользе для всех.
- Любые другие сообщения или вопросы, а так же личные эмоции в адрес авторов и полемика, не относящаяся к теме обсуждаемого материала, будут удаляться без предупреждения авторов, дабы не мешать жителям нормально общаться.
- При голосовании учитывайте уровень, на который расчитан материал. "Интересность и полезность" имеет смысл оценивать относительно того, кому именно предназначался материал.
- Размер одного сообщений не должен превышать 5К. Если Вам нужно сказать больше, сделайте это за два раза. Или, что в данной ситуации правильнее, напишите свою статью.
Всегда легче осудить сделанное, нежели сделать самому. Поэтому, пожалуйста, соблюдайте правила Королевства и уважайте друг друга.
Добавить свое мнение.
| | Содержит полезные и(или) интересные сведения | [1] | 17 | 85% | | | | Ничего особенно нового и интересного | [2] | 3 | 15% | | | | Написано неверно (обязательно укажите почему) | [3] | 0 | 0% | | Всего проголосовали: 20 | | | Все понятно, материал читается легко | [1] | 17 | 100% | | | | Есть неясности в изложении | [2] | 0 | 0% | | | | Непонятно написано, трудно читается | [3] | 0 | 0% | | Всего проголосовали: 17 |
[TQuery] [TADODataSet] [TADOConnection] [TADOQuery] [TADOStoredProc] [TADOTable] [TADOCommand] [TDataSource] [ADO]
Отслеживать это обсуждение
Всего сообщений: 2021-03-2005 04:232 valeryx
TableName нужно задать имя листа с символом "$" в конце. Напр.
function OpenXls(const xlFileName, xlTableName: String): Boolean;
const
cConnectionStr: array[0..3] of String = (
'Provider=Microsoft.Jet.OLEDB.4.0',
'Data Source=',
'Extended Properties=Excel 8.0',
'Persist Security Info=False'
// эти параметры подключения у меня почему то не поддерживаются
// взято с http://www.connectionstrings.com/
// 'HDR=Yes', // "HDR=Yes;" indicates that the first row contains columnnames, not data
// 'IMEX=1' // tells the driver to always read "intermixed" data columns as text
);
var
ConnectParams: TStrings;
i: Integer;
FName: String;
begin
Result := False;
ADOConnection1.Connected := False;
ConnectParams := TStringList.Create;
try
ConnectParams.Delimiter := ';';
ConnectParams.QuoteChar := '"';
for i := Low(cConnectionStr) to High(cConnectionStr) do
ConnectParams.Add(cConnectionStr[i]);
ConnectParams.Values['Data Source'] := ExpandFileName('Imports\' +
ChangeFileExt(xlFileName, '.xls'));
ADOConnection1.ConnectionString := AnsiReplaceText(ConnectParams.DelimitedText, '"', '');
// ShowMessage(ADOConnection1.ConnectionString);
ADOConnection1.Open;
FName := xlTableName;
if Pos('$', FName) = 0 then FName := FName + '$';
ADODataSet1.CommandText := Format('select * from [%s]', [FName]);
// ShowMessage(ADODataSet1.CommandText);
ADODataSet1.Open;
finally
ConnectParams.Free;
end;
end;
|
|
15-03-2005 09:11Большое спасибо!!! Ни где не могла найти Толково описанный данный материал. Но у меня возникла проблема: после того, как вынесла на форму компонент TDBGrid с закладки DataControls, я не могу установить его свойство DataSource в DataSource1, так как из поля DataSource выпадает пустой список. Почему так??? Помогите. Объясните. |
|
15-07-2003 18:20А как оно работает с Excel 8?
ADOTable просит задать поле TableName. Припопытке выбрать - ругается "Объект или поставщик не может выполнить требуемую операцию".
Что скажите? |
|
19-02-2003 14:56>>>но где же подробное описание всех свойств файла.UDL
А почему оно должно быть именно здесь? |
|
19-02-2003 14:37Статья хорошая, но где же подробное описание всех свойств файла.UDL, которые на последней страничке конфигуратора файлов.UDL ??? |
|
06-08-2002 18:36Уважаю людей, которые находят время и силы поделиться своим опытом с начинающими! Спасибо, JINX! Статья действительно полезна. |
|
28-07-2002 04:48Клевая статья :) Автору БОЛЬШОЕ СПАСИБА!!!!!!!!!!!!! |
|
12-04-2002 08:40Спасибо Сообщение не подписано |
|
25-12-2001 00:08ADO вещь неплохая, но иногда слишком глючная в тонких моментах, при чем замечено на разных БД. |
|
30-10-2001 12:32Все нормально в ADO, но не знаю как дорлжна выглядеть строка конекта к базе Информикса. К Ораклу нормальну к другим СУБД нормально, а к Информиксу немогу. Но без ОDBC. Помогите. Большое спасибо |
|
28-07-2001 16:46Спасибо Автору! Виват!
Очень вовремя появилась статья!
(переписываю СУБД с БДЕ на АДО т.к. перехожу на АККЕСС2000).
ЗЫ: не скромный ворос - а где автор берет эту информацию? можно УРЛ?
если же Сам - то ВИВАТ 2 раза :) |
|
02-07-2001 15:14
21-05-2001 18:54
19-05-2001 16:26
18-05-2001 11:14сообщение от автора материала NV - извините, я не обновил страницу с обсуждением и не видел
Вашего сообщения.
Спасибо и Вам, надеюсь что мне удасться написать продолжение, которое будет хоть кому то полезно и не только в 'художественном' смысле :-) |
|
17-05-2001 11:38сообщение от автора материала Большое спасибо за поддержку, Юрий. :-)
WorkMan - да я надеюсь рассказать в продолжении о том почему выдается сообщение Row cannot be located, и почему в ADO не нужен TUpdateSQL.
Просто чтобы рассказать об этом не с бухты барахту - я решил написать первую часть как небольшое введение, причем в самой статье подчеркнул, что таких введений уже есть несколько - я хочу их несколько продолжить - и чтоб не заниматься плагиатом - сочинил свое.
И, конечно, материал расчитан не на гуру - я на это и не претендую.
|
|
17-05-2001 10:44Нда-с.
Начал читать статью. Посмотрел обсуждение. Дочитал статью до конца. Пошел писать в обсуждение. Вах! Юрий уже всё сказал. Обидно. Так ведь многие и не захотят ничего писать в Hello World после таких хаяний. Некоторые 'гуру' видимо забыли, как начинали, как читали каждый найденный абзац по интересующей их теме. Я, к примеру, с удовольствием почитаю продолжение (как художесвенное произведение :-). |
|
17-05-2001 10:33To WorkMan и Снежок. И их возможным последователям.
Раздел сайта, в котором опубликована статья, называется 'Hello, World!'. На главной странице в его описании сказано следующее.
1. 'Учебные материалы по просьбам самих жителей'.
Значит, такая просьба была, и наверняка не одна. Значит, кому-то это надо.
2. 'Почти на каждый такой вопрос можно ответить 'нажмите F1', но в этом разделе мы так отвечать не будем...'.
То есть, раздел и задуман именно как букварь.
В свете сказанного - если Вы уже переросли этот уровень, то Вам не стоит заглядывать в раздел для начинающих. Или Вы ожидали найти здесь какие-то глубины, хитрости, недокументированные возможности и пр.?
А уж если заглянули, то не стоит критиковать человека именно за то, что, что он и ДОЛЖЕН был сделать - изложить ОСНОВЫ, причем простым и понятным языком, в доброжелательном стиле. И, на мой взгляд, JINX справился с задачей блестяще.
Браво, Азиз!
|
|
17-05-2001 10:02
17-05-2001 09:10Незнаю что будет в продолжении, но пока это пересказ
вводной статьи про ADO от Epsylon или кого то еще,
воообщем, новизны и полезных практических советов нет
в отличии от статьи Иванова Д.М. |
|
|
|