Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Выдает ошибку при подключении к базе


Автор: neokortex 5.3.2008, 11:13
Только учусь, помогите новичку.
Создаю ado connection, запускаю прогу, все работает. Создаю ADO Table? насраиваю, запускаю, работает. Но когда перевожу ADO Table active в true и запускаю run выдает ошибку.
Синим выделяет сроку в коде проекта
Код

Application.run;
 
я только учусь, не понимаю чего он от меня хочет, помогите пожалуйста

Автор: ТоляМБА 5.3.2008, 11:28
Цитата(neokortex @  5.3.2008,  13:13 Найти цитируемый пост)
не понимаю чего он от меня хочет
Пока ты не напишешь нам какую он
Цитата(neokortex @  5.3.2008,  13:13 Найти цитируемый пост)
выдает ошибку

мы это тоже наврядли поймём - телепаты в отпуске  smile 

Автор: Данкинг 5.3.2008, 11:33
Наверное, или не указано имя таблицы, или же подключения.

Автор: neokortex 5.3.2008, 11:44
Debugger Exception Notification
Project Project1.exe raised exception class EVariantError with message 'Invalid variant type conversion'
...
ок и показывает эту строку Application.Run; (предпоследняя)
в контексте
Код

program Project1;

uses
  Forms,
  test in 'test.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end

Автор: ТоляМБА 5.3.2008, 11:55
Ой чую я что недавно похожая тема тут пробегала. Если кода немного - опубликуй, если много прикрепи в архиве.

Автор: neokortex 5.3.2008, 12:03
Код

unit test;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB;

type
  TForm1 = class(TForm)
    my_connection: TADOConnection;
    my_table: TADOTable;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

end.

и
Код

object Form1: TForm1
  Left = 292
  Top = 106
  Width = 696
  Height = 480
  Caption = 'Form1'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object my_connection: TADOConnection
    Connected = True
    ConnectionString = 'FILE NAME=D:\Neokortex\prog\1.udl'
    LoginPrompt = False
    Left = 32
    Top = 24
  end
  object my_table: TADOTable
    Active = True
    Connection = my_connection
    CursorType = ctStatic
    TableName = 'test'
    Left = 88
    Top = 24
  end
end

Автор: Rennigth 5.3.2008, 12:24
neokortex, 
а отдельно твой "D:\Neokortex\prog\1.udl" подключается нормально к базе?
    

Автор: neokortex 5.3.2008, 12:35
да подключение работает нормально.
я и говорю что вся прога нормально работает до тех пор пока я не активирую ADO Table, а если false поставить, то ошибки не будет

Автор: ТоляМБА 5.3.2008, 13:09
А в дизайн-тайме (до нажатия Run) если делаешь активе=тру то тоже всё нормально или нет?

Автор: neokortex 5.3.2008, 13:37
да

Автор: Akella 7.3.2008, 21:15
Цитата(neokortex @  5.3.2008,  11:13 Найти цитируемый пост)
я только учусь, не понимаю чего он от меня хочет, помогите пожалуйста 

от тебя, наверное, хотят, что бы ты купил хотябы 1-2 книженций по дельфи и по базам данных  smile 

Автор: aalexstorm 10.3.2008, 15:25
По-моему проблема решается просто:
Выставлять свойство active в true нужно непосредственно после подключения в коде программы

Автор: neokortex 21.3.2008, 17:06
эээ, а как это сделать? :(

Автор: Rodman 21.3.2008, 17:17
в Table есть такое свойство, вот его и устанавливай!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)