1.运行生成的EXE文件后,再打开DPR工程文件想运行一下程序的时候就会出现以下错误提示
[Fatal Error] Could not create output file 'D:\程序\delphi\人事工资管理信息系统\ENTERPRISE.exe'2.我做了一个连数据库的程序,其中一项功能就是向表里插入新记录。其中包括图片的写入(IMAGE)字段。当运行程序想要写入一条记录时 虽然能成功的写入,但是之前总是提示一个错误对话框:“将截断字符串或二进制数据”,请问怎么办?以下是插入语句(我是新手跟着课本写的)
-------------------------------
modsql:='update base_data set worker_name='''+edit2.Text+''',archives_id='''+edit3.Text+''','
+'sex='''+sex+''',school_age='''+edit10.Text+''',native_place='''+edit11.Text+''','
+'graduate_sch='''+edit5.Text+''',address='''+edit12.Text+''',politic_status='''+edit6.Text+''','
+'major='''+edit13.Text+''',link_phone='''+edit7.Text+''',department_name='''+edit14.Text+''','
+'re='''+memo1.Text+''',birthday='''+datetostr(datetimepicker1.Date)+''','
+'work_time='''+datetostr(datetimepicker2.Date)+''',come_time='''+datetostr(datetimepicker3.Date)+''' '
+' where worker_id='''+edit1.Text+'''';
------------------------------------------------------
3。顺便想问一下。我这是添加一条记录,可为什么书上的SQL句子(以上)不用INSERT INTO 而用UPDATE呢??=======================在下十分感谢诸位帮忙!
[Fatal Error] Could not create output file 'D:\程序\delphi\人事工资管理信息系统\ENTERPRISE.exe'2.我做了一个连数据库的程序,其中一项功能就是向表里插入新记录。其中包括图片的写入(IMAGE)字段。当运行程序想要写入一条记录时 虽然能成功的写入,但是之前总是提示一个错误对话框:“将截断字符串或二进制数据”,请问怎么办?以下是插入语句(我是新手跟着课本写的)
-------------------------------
modsql:='update base_data set worker_name='''+edit2.Text+''',archives_id='''+edit3.Text+''','
+'sex='''+sex+''',school_age='''+edit10.Text+''',native_place='''+edit11.Text+''','
+'graduate_sch='''+edit5.Text+''',address='''+edit12.Text+''',politic_status='''+edit6.Text+''','
+'major='''+edit13.Text+''',link_phone='''+edit7.Text+''',department_name='''+edit14.Text+''','
+'re='''+memo1.Text+''',birthday='''+datetostr(datetimepicker1.Date)+''','
+'work_time='''+datetostr(datetimepicker2.Date)+''',come_time='''+datetostr(datetimepicker3.Date)+''' '
+' where worker_id='''+edit1.Text+'''';
------------------------------------------------------
3。顺便想问一下。我这是添加一条记录,可为什么书上的SQL句子(以上)不用INSERT INTO 而用UPDATE呢??=======================在下十分感谢诸位帮忙!
看看这个文件是不是选中了“只读”属性!如果选中了,就取消选中
你说的UPDATE可插入记录,这个的确无法理解,能否贴出代码?
+'sex='''+sex+''',school_age='''+edit10.Text+''',native_place='''+edit11.Text+''','
+'graduate_sch='''+edit5.Text+''',address='''+edit12.Text+''',politic_status='''+edit6.Text+''','
+'major='''+edit13.Text+''',link_phone='''+edit7.Text+''',department_name='''+edit14.Text+''','
+'re='''+memo1.Text+''',birthday='''+datetostr(datetimepicker1.Date)+''','
+'work_time='''+datetostr(datetimepicker2.Date)+''',come_time='''+datetostr(datetimepicker3.Date)+''' '
+' where worker_id='''+edit1.Text+''''
unit baseinputUnit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ExtDlgs, ComCtrls, DB, ADODB,basedata_unit;type
Tbaseinputfrm = class(TForm)
worker_idlb: TLabel;
worker_namelb: TLabel;
archives_idlb: TLabel;
sex_lb: TLabel;
birthday_lb: TLabel;
native_placelb: TLabel;
school_agelb: TLabel;
graduate_schlb: TLabel;
politics_ststuslb: TLabel;
work_timelb: TLabel;
come_timelb: TLabel;
address_lb: TLabel;
link_phonelb: TLabel;
department_lb: TLabel;
major_lb: TLabel;
re_lb: TLabel;
Label18: TLabel;
Bevel1: TBevel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit5: TEdit;
Edit7: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Memo1: TMemo;
Input_Ok: TButton;
cancel_btn: TButton;
pic_btn: TButton;
OpenPictureDialog1: TOpenPictureDialog;
Label16: TLabel;
Panel1: TPanel;
Image1: TImage;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DateTimePicker3: TDateTimePicker;
edit6: TComboBox;
sexchk1: TRadioButton;
sexchk2: TRadioButton;
Label1: TLabel;
Edit10: TComboBox;
procedure cancel_btnClick(Sender: TObject);
procedure pic_btnClick(Sender: TObject);
procedure Input_OkClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
basedata:Tbasedata;
{ Private declarations }
public
{ Public declarations }
end;var
baseinputfrm: Tbaseinputfrm;implementationuses persondatamod_unit, basefindUnit1;{$R *.dfm}procedure Tbaseinputfrm.cancel_btnClick(Sender: TObject);
begin
//image1.Picture.Free ;
baseinputfrm.Close;
end;procedure Tbaseinputfrm.pic_btnClick(Sender: TObject);
begin
if openpicturedialog1.Execute then
begin
//在image中显示选中的图片
image1.Picture.LoadFromFile(openpicturedialog1.FileName);
end;
end;procedure Tbaseinputfrm.Input_OkClick(Sender: TObject);
var
modsql,path1,sex:string;
begin
//判断是否选择照片
if openpicturedialog1.FileName='' then
begin
showmessage('请选择照片!');
exit;
end;
//判断员工编号是否已经存在
if basedata.CheckRec(edit1.Text)=true then
begin
showmessage('该员工编号已经存在,插入失败!');
exit;
end;
//获取选中照片的路径
path1:=openpicturedialog1.FileName;
//调用类中方法先插入员工编号和照片内容
basedata.WorkId1(edit1.Text,path1);
//判断选择的性别
if sexchk1.Checked then sex:='男';
if sexchk2.Checked then sex:='女';
//赋值SQL语句更改插入记录的其它内容
modsql:='update base_data set worker_name='''+edit2.Text+''',archives_id='''+edit3.Text+''','
+'sex='''+sex+''',school_age='''+edit10.Text+''',native_place='''+edit11.Text+''','
+'graduate_sch='''+edit5.Text+''',address='''+edit12.Text+''',politic_status='''+edit6.Text+''','
+'major='''+edit13.Text+''',link_phone='''+edit7.Text+''',department_name='''+edit14.Text+''','
+'re='''+memo1.Text+''',birthday='''+datetostr(datetimepicker1.Date)+''','
+'work_time='''+datetostr(datetimepicker2.Date)+''',come_time='''+datetostr(datetimepicker3.Date)+''' '
+' where worker_id='''+edit1.Text+'''';
basedata.RecUpdate(modsql);
application.MessageBox('新建成功!','提示:',mb_ok);
//插入新员工信息后触发显示界面的OnActivate事件刷新显示
basefindfrm.FormActivate(Sender);
end;
procedure Tbaseinputfrm.FormActivate(Sender: TObject);
begin
//实例化类
basedata:=Tbasedata.create ;
end;procedure Tbaseinputfrm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
//释放实例
basedata.Free;
end;end.
//------------------------------------------------------//====这是 BASEDATA类的RECUPDATE过程
procedure Tbasedata.RecUpdate(UpdateSQL:string);
begin
Datamod.Person_adoq2.Close ;
Datamod.Person_adoq2.SQL.Clear;
Datamod.Person_adoq2.SQL.Add(UpdateSQL);
Datamod.Person_adoq2.ExecSQL;
end;
抱歉 哈哈!
谢谢你们