delphi的一个程序问题!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi的一个程序问题!相关的知识,希望对你有一定的参考价值。

unit Unit3;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;

type
TCR1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Button1: TButton;
Button2: TButton;
Memo1: TMemo;

procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
Private declarations
public
Public declarations
end;

var
CR1: TCR1;

implementation

uses Unit1, Unit2;

$R *.dfm

procedure TCR1.Button1Click(Sender: TObject);
Var
Xh,Xm,Xb,Cssj,Zy,Zxf,Bz, Sql1,Sql2:String;
begin
Xh:=Edit1.Text;
Xm:=Edit2.Text;
if RadioButton1.Checked=true then
Xb:='1'
else
Xb:='0';
Zy:=Edit4.Text;
Cssj:=Edit3.Text;
Zxf:=Edit5.Text;
Bz:=Memo1.Text;

Sql1:='select xh from xs where xh='+''''+Xh+'''';
XSCJDM.XSCJADODataSet.Active:=false;
XSCJDM.XSCJADODataSet.CommandText:=Sql1;
XSCJDM.XSCJADODataSet.Active:=true;

if(XSCJDM.XSCJADODataSet.FieldValues['xh']<>NULL)then
showmessage('该学生记录已经存在!')
else
begin
Sql2:='Insert xs values('''+Xh+''','''+Xm+''','+Xb+','''+Cssj+''',
'''+Zy+''','+Zxf+','''+Bz+''')'; //这里有问题!!!!
XSCJDM.XSCJADOCommand.CommandText:=Sql2;
XSCJDM.XSCJADOCommand.Execute;
showmessage('插入成功!');
end;

procedure TCR1.Button2Click(Sender: TObject);
begin
XSCJGL.Visible:=true;
CR1.Close;
end;
end.

错误:
[Error] Unit3.pas(71): Unterminated string
[Error] Unit3.pas(72): Missing operator or semicolon
[Error] Unit3.pas(72): Unterminated string
[Fatal Error] Project1.dpr(7): Could not compile used unit 'Unit3.pas'

请问怎么搞的???多谢!!

Sql2:='Insert xs values('''+Xh+''','''+Xm+''','+Xb+','''+Cssj+''',
'''+Zy+''','+Zxf+','''+Bz+''')'; //这里有问题!!!!
改成:

Sql2:='Insert xs values('+
''''+Xh+''''+','+
''''+Xm+''''+','+
'''+Xb+''''+','+
DateToStr(Cssj)+','+
''''+Zy+''''+','+
FloatTostr(Zxf)+','+
''''+Bz+''''+')';
以上我假设xh是序号,字符型的,xm是姓名,字符型的,xb是性别字符型的,Cssj时间型的,zy摘要字符型的,Bz备注字符型的。sql2中的引号均为单引号。
参考技术A procedure
TForm1.Button3Click(Sender:
TObject);
  var
  SysTime:
TsystemTime;
  begin
  GetSystemTime(Sys
Time);就用这个函数Get
System
Time
  Caption:=IntToStr(Sys
Time.wYear)+'
'+IntToStr(SysTime.wMonth);
  //if
SysTime.wYear>2000
then
  //
在程序逻辑中利用获取的各类时间值
  end;试过了,通过,
参考技术B Statusbar1.Panels[0].Text:=FormatDateTime('YYYY-MM-DD',now);
Statusbar1.Panels[1].Text:=FormatDateTime('hh:mm:ss',now);

用delphi开发应用程序会不会有内存泄露的问题?

任何语言,没释放内存,都会泄漏,我写分析程序,每分析一个文件要建立一个TStringList,如果分析完没释放的话,很快4G内存就爆了(不是爆炸)

不过我猜你想问的是VCL是否有内存泄漏,这个框架非常棒,基本没有内存泄漏的问题,你只要每次能释放自己申请的内存,就不会有泄漏问题
参考技术A 在开发的时候,DELPHI的编译器是在一个隔离的内存盒里面进行的,在编译关闭的时候就会自动释放所有空间,此时不存在内存益出.
但是如果你指的是已经开发好的程序给客户用,当然会存在,所以要记得释放内存.
参考技术B D7系列版本有内存回收机制,全自动的,不必担心! 参考技术C 问题能专业话点么,什么叫内存泄露啊,你是指内存溢出么

以上是关于delphi的一个程序问题!的主要内容,如果未能解决你的问题,请参考以下文章

有关delphi程序的问题

delphi程序问题

delphi程序问题

关于delphi程序运行死机的问题

关闭 delphi 应用程序以及它打开的另一个应用程序

delphicef4多开