⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.~pas

📁 操作SQLServer数据库Image列
💻 ~PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, frxClass, frxDBSet, frxPreview, StdCtrls, ExtCtrls,Jpeg,
  Buttons;

type
  TForm1 = class(TForm)
    ADOConnection1: TADOConnection;
    ADOQuery1: TADOQuery;
    frxDBDataset1: TfrxDBDataset;
    frxPreview1: TfrxPreview;
    frxReport1: TfrxReport;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    imgZP: TImage;
    BitBtn1: TBitBtn;
    Image1: TImage;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
     ADOConnection1.Connected:=True;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     ADOConnection1.Connected:=False;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
     strSQL:string;
begin
  strSQL:='Select 姓名,性别,民族,DATEPART(year,出生日期) As 出生年,';
  strSQL:=strSQL+'DATEPART(month,出生日期) As 出生月,DATEPART(day,出生日期) As 出生日,';
  strSQL:=strSQL+'所属省,所属市,所属县区,SUBSTRING(入校年月,1,4) As 入校年,SUBSTRING(入校年月,5,2) As 入校月,';
  strSQL:=strSQL+'SUBSTRING(毕业年月,1,4) As 毕业年,SUBSTRING(毕业年月,5,2) As 毕业月,';
  strSQL:=strSQL+'学制,水平,照片,所属学校,';
  strSQL:=strSQL+'DATEPART(year,发证日期) As 发证年,DATEPART(month,发证日期) As 发证月,';
  strSQL:=strSQL+'DATEPART(day,发证日期) As 发证日,';
  strSQL:=strSQL+'义教证字号';
  strSQL:=strSQL+' From ZS_XSA_BYXX ';
  strSQL:=strSQL+' Where ';
  strSQL:=strSQL+'学校代码='''+'450301001032'+'''';
  strSQL:=strSQL+' AND 班号='''+'2005202'+'''';
  strSQL:=strSQL+' AND 学号=''2005202001''';
  ADOQuery1.Active:=False;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add(strSQL);
  ADOQuery1.Active:=True;

   frxPreview1.Zoom := 0.7;
 // 预览
   frxReport1.ShowReport(True);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
     frxReport1.Print;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
        MStream:TMemoryStream;
        Jpg:TJpegImage;
        strSQL:string;
begin
  strSQL:='Select 姓名,性别,民族,DATEPART(year,出生日期) As 出生年,';
  strSQL:=strSQL+'DATEPART(month,出生日期) As 出生月,DATEPART(day,出生日期) As 出生日,';
  strSQL:=strSQL+'所属省,所属市,所属县区,SUBSTRING(入校年月,1,4) As 入校年,SUBSTRING(入校年月,5,2) As 入校月,';
  strSQL:=strSQL+'SUBSTRING(毕业年月,1,4) As 毕业年,SUBSTRING(毕业年月,5,2) As 毕业月,';
  strSQL:=strSQL+'学制,水平,照片,所属学校,';
  strSQL:=strSQL+'DATEPART(year,发证日期) As 发证年,DATEPART(month,发证日期) As 发证月,';
  strSQL:=strSQL+'DATEPART(day,发证日期) As 发证日,';
  strSQL:=strSQL+'义教证字号';
  strSQL:=strSQL+' From ZS_XSA_BYXX ';
  strSQL:=strSQL+' Where ';
  strSQL:=strSQL+'学校代码='''+'450301001032'+'''';
  strSQL:=strSQL+' AND 班号='''+'2005202'+'''';
  ADOQuery1.Active:=False;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add(strSQL);
  ADOQuery1.Active:=True;

  If ADOQuery1.FieldByName('照片').IsNull then
  begin
       ShowMessage('无数据');
       EXIT;
  end;

    MStream := TMemoryStream.Create;
    JPG := TJpegImage.Create;
    TBlobField(ADOQuery1.FieldByName('照片')).SaveToStream(MStream);
    MStream.Position := 0;
    if MStream.Size <> 0 then
    begin
        JPG.LoadFromStream(MStream);
        Image1.Picture.Assign(JPG);
    end;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var
     strSQL:string;
     MStream:TMemoryStream;
begin
     MStream := TMemoryStream.Create;
     imgZP.Picture.Graphic.SaveToStream(MStream);
     strSQL := 'update ZS_XSA_BYXX set 照片=:photo';
     strSQL:=strSQL+' where 学校代码='''+'450301001032'+'''';
     strSQL:=strSQL+' AND 班号='''+'2005202'+'''';
     ADOQuery1.Close;
     ADOQuery1.SQL.Clear;
     ADOQuery1.SQL.Add(strsql);
     ADOQuery1.Parameters.ParamByName('photo').LoadFromStream(MStream, ftBlob);
     ADOQuery1.ExecSQL;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -