我有一个在SQL Server中工作的查询,但是当我在delphi中的ado查询中保存它时它不起作用并停止此错误:
Incorrect syntax near 'GO'
Run Code Online (Sandbox Code Playgroud)
但是下面的代码是正确的,没有任何错误.我在sql server中测试过它.下面的代码不是Regular,因为我从delphi复制并通过它.
我的查询:
create function GetTedad(@pfcode INT, @pdcode INT) returns int
as begin declare @Tedad int;
select @Tedad= sum(t2.tedade_avalie) from Tbl_avalie_salon t2 where t2.FCode = @pfcode and t2.DCode = @pdcode
return (@Tedad); end;
GO
create function getSumBSen2(@pfcode INT, @pdcode INT, @pSen INT) returns int
as begin declare @r int;
select @r= sum(t2.t_shab + t2.t_rooz) from tbl_talafat_dan t2 where t2.FCode = @pfcode and t2.DCode = @pdcode and t2.sen <= @pSen;
return (@r); end;
GO
select …Run Code Online (Sandbox Code Playgroud) 首先,维基百科将控制面板小程序定义为:
图形用户界面,允许用户通过applet查看和操作基本系统设置和控件
它是否正确?
其次,在功能方面,VCL应用程序和控制面板小程序之间有什么区别.与VCL应用程序相比,使用CP Applet更改基本系统设置更容易吗?
我在XP Pro机器上运行Delphi 2010 Professional.我已经在一个项目上工作了好几天.每次我在我的开发机器上运行程序它都运行正常或者我想.我从IDE中运行该程序,它运行正常.我从输出目录(IDE外部)运行程序,它运行正常.我在我的机器上运行这个程序时没有任何问题.
因此,为了模拟客户体验,我将.exe文件复制到记忆棒上,然后将其复制到完全不同的机器上.当我在不同的机器上运行程序时,我得到一个未处理的win32异常.
这是错误对话框:
+------------------------------------------------------------------------------+
| Visual Studio Just-In-Time Debugger |
+------------------------------------------------------------------------------+
| An unhandled win32 exception occured in ZilchStd.exe [984]. Just-In-Time |
| debugging this exception failed with the following error: No installed |
| debugger has Just-In-Time debugging enabled. In Visual Studio, Just-In-Time |
| debugging can be enabled from the Tools/Options/Debugging/Just-In-Time. |
| |
| Check the documention index for "just-in-tim debugging, errors' from more |
| information. |
+------------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
我以前从来没有遇到过这种情况.如何解决此错误?
我有一个用XOR加密的在线TXT文件.我正在使用Indy HTTP来读取此文件.当我这样做:
Buff.Text:= HTTP.Get('http://www.blabla.com/xor.txt');
Run Code Online (Sandbox Code Playgroud)
Buff中的内容已损坏,我无法正确解密.怎么解决这个?下面我将粘贴我正在使用的函数来对Xxt文件进行XOR:
function TForm1.XorStr(Input: AnsiString; Seed: integer): AnsiString;
var
i : integer;
Output : AnsiString;
begin
Output := '';
for i := 1 to Length(Input) do
Output := Output + AnsiChar(Ord(Input[i]) XOR (Seed));
Result:= Output;
end;
Run Code Online (Sandbox Code Playgroud)
希望有人可以帮助我.感谢你们!
我有一个自定义组件,包含以下事件
private
{ Private declarations }
...
fOnImageClick: TNotifyEvent;
fOnImageMouseUp: TMouseEvent;
fOnImageMouseDown: TMouseEvent;
fOnImageMouseMove: TMouseMoveEvent;
fOnImageMouseEnter: TNotifyEvent;
fOnImageMouseLeave: TNotifyEvent;
fOnImageSelect: TNotifyEvent;
fOnImageDblClick: TNotifyEvent;
protected
...
public
{ Public declarations }
...
published
...
property OnImageClick: TNotifyEvent read fOnImageClick write fOnImageClick;
property OnImageSelect: TNotifyEvent read fOnImageSelect write fOnImageSelect;
property OnImageDblClick: TNotifyEvent read fOnImageDblClick write fOnImageDblClick;
property OnImageMouseDown: TMouseEvent read fOnImageMouseDown write fOnImageMouseDown;
property OnImageMouseUp: TMouseEvent read fOnImageMouseUp write fOnImageMouseUp;
property OnImageMouseMove: TMouseMoveEvent read fOnImageMouseMove write fOnImageMouseMove;
property OnImageMouseLeave: TNotifyEvent read fOnImageMouseLeave …Run Code Online (Sandbox Code Playgroud) 使用Delphi 2010
任何人都可以通过我的代码告诉我我在做错了什么.注释显示了我尝试将参数传递给ADOQuery的特定方法所收到的错误
procedure CreateAdminLogin(const APasswd: string);
var
qry: TADOQuery;
//P1, P2: TParameter;
begin
qry := TADOQuery.Create(nil);
try
qry.Connection := frmDataModule.conMain;
qry.SQL.Text := 'INSERT INTO Users (User_Id, Password) VALUES (:u, :p)';
//Syntax error in INTO statement
qry.Parameters.ParamByName('u').Value:= 'Admin';
qry.Parameters.ParamByName('p').Value:= GetMd5(APasswd);
//invalid variant operation
{qry.Parameters.ParamByName('u').Value.AsString:= 'Admin';
qry.Parameters.ParamByName('p').Value.AsString:= GetMd5(APasswd);}
//invalid variant operation
{P1:= qry.Parameters.ParamByName('u');
P1.Value.asString:= 'Admin';
P2:= qry.Parameters.ParamByName('p');
P2.Value.asString:= GetMd5(APasswd);}
qry.Prepared := True;
qry.ExecSQL;
finally
qry.Free;
end;
end;
Run Code Online (Sandbox Code Playgroud)
注意:GetMD5声明如下
function GetMd5(const Value: String): string;
var
hash: MessageDigest_5.IMD5;
fingerprint: string;
begin
hash := …Run Code Online (Sandbox Code Playgroud) 如果TForm有一个TListBox上面,下面的工作:
procedure TForm1.FormCreate(Sender: TObject);
procedure _WorkOnListBox;
begin
ListBox.Items.Append('Test');
end;
begin
_WorkOnListBox;
end;
Run Code Online (Sandbox Code Playgroud)
如下所示:
procedure TForm1.DoWithoutListBoxEvents(AProc: TProc);
begin
ListBox.Items.BeginUpdate;
try
AProc;
finally
ListBox.Items.EndUpdate;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
DoWithoutListBoxEvents(procedure
begin
LayersListBox.Items.Append('Test');
end);
end;
Run Code Online (Sandbox Code Playgroud)
但以下不是:
procedure TForm1.FormCreate(Sender: TObject);
procedure _WorkOnListBox;
begin
ListBox.Items.Append('Test');
end;
begin
DoWithoutListBoxEvents(_WorkOnListBox);
end;
Run Code Online (Sandbox Code Playgroud)
我得到了E2555 Cannot capture symbol '_WorkOnListBox'.为什么?有没有办法在DoWithoutListBoxEvents不使用匿名程序的情况下开始工作?虽然我认为它看起来很优雅,但我试图保持FPC兼容.
如何在不使用Delphi中的迭代语句(for或while循环)的情况下将一个数组附加到另一个相同类型的数组?
在数据库中,DoctorID是整数列.编辑后的"//"代码行都不起作用.如果有人能告诉我如何在SQL语句中正确指定整数值,我将非常感激.
procedure TForm1.btnDeleteDocClick(Sender: TObject);
var
iID : Integer;
begin
iID := StrToInt (InputBox('Delete Doctor','Please enter in your Doctor ID',''));
with dmHospital do
begin
qryDoctors.SQL.Clear;
//qryDoctors.SQL.Add('DELETE FROM Doctors WHERE DoctorID = iID ' ) ;
//qryDoctors.SQL.Add('DELETE FROM Doctors WHERE DoctorID = ' + QuotedStr(iID));
qryDoctors.ExecSQL;
qryDoctors.SQL.Clear;
qryDoctors.SQL.Add('SELECT * FROM Doctors');
qryDoctors.Open;
end;
end;
Run Code Online (Sandbox Code Playgroud) 是否可以在快速报告6中禁用最小化?
出于某种原因,在delphi中,fastreport会自动最小化。
仅关闭并最大化按钮。
有什么办法吗?
delphi ×10
delphi-2010 ×10
delphi-xe ×2
sql ×2
append ×1
arrays ×1
fastreport ×1
freepascal ×1
sql-delete ×1
vcl ×1