• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

База

  • Автор темы da-nik7
  • Дата начала
D

da-nik7

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, StdCtrls, ADODB, Grids, DBGrids, DB;

type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
DataSource2: TDataSource;
Button1: TButton;
Button2: TButton;
DBNavigator1: TDBNavigator;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
fam:string[30];
begin
fam:=InputBox('выборка информации из БД',
'Укажите фамилию и щелкните на ОК.','');
if fam <> '' // пользователь ввел фамилию
then
begin
with form1.ADOQuery1 do begin
close; // закрыть файл-результат выполнения предыдущего запроса
sql.clear; // удалить текст предыдущедо запроса
//записываем новый запрос в свойство sql
SQL.Add('select fam, name, class');
SQL.Add('from ":ilyas aubakir:к.mdb"');
SQL.add('where');
SQL.add('(fam = "'+ fam + '")');
SQL.Add('order by name, fam');
open; // активизируем выполнение запроса
end;
if adoQuery1.recordCount <> 0 then
datasource1.dataset:=adoquery1// отобразить рез-т выполнения запроса
else begin
showmessage ('В БД нет записей,удовлетворяющих критерию запроса.');
datasource1.dataset:=adotable1;
end;
end;
end;



procedure TForm1.Button2Click(Sender: TObject);
begin
datasource1.DataSet:=Adotable1;// источник данных - таблица
end;
// активизация формы
procedure TForm1.FormActivate(Sender: TObject);
begin
with session do
begin
configmode := cmsession;
try
{если файл данных находиться в том же каталоге, что и выполняемый файл программы,то в программе путь к файлу данных может быть получен из командной строки при помощи функций Extractfilepath ( paramstr(0)).
в приведенном примере файл данных находиться в подкаталоге DATA каталога программы.}
// создадим временные псевдоним для базы данных
Addstandardalias('ilyas aubakir', extractfilepath(paramstr(0))+'DATA'\',
'PARADOX');
table1.active.:= true; // откроем базу данных
finally
configmode :=cmALL;
end;
end;
end;
end;
 

Вложения

  • Безымянныйп.png
    Безымянныйп.png
    15,1 КБ · Просмотры: 540
  • Безымянный.jpg
    Безымянный.jpg
    71,4 КБ · Просмотры: 492
A

Allegro

Доброго времени суток!

type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
DataSource2: TDataSource;
Button1: TButton;
Button2: TButton;
DBNavigator1: TDBNavigator;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

В вышеуказанном блоке вы не описали procedure FormActivate(Sender: TObject); из за этого и появляется ошибка
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!