我的数据表这样:
字段1 字段2 字段3
1 2 4
2 5 6
2 4 5我想用字段1和字段2通过一系列复杂运算得到字段3的值,比如通过一个自定义的函数:
字段2:=abcd(字段1,字段2);
我用update语句和怎么得到这个值,并批量写到数据库中?也可以使用Parameters参数。简单地说,就是在SQL语句中使用自定义的函数,怎么写?
字段1 字段2 字段3
1 2 4
2 5 6
2 4 5我想用字段1和字段2通过一系列复杂运算得到字段3的值,比如通过一个自定义的函数:
字段2:=abcd(字段1,字段2);
我用update语句和怎么得到这个值,并批量写到数据库中?也可以使用Parameters参数。简单地说,就是在SQL语句中使用自定义的函数,怎么写?
解决方案 »
- 问个基本问题
- 如何在delphi中使用ASCII码为0的字符?
- 如何增加DELPHI的文件搜索路径?
- 请教~~!
- 超难!用QuickReport打印时,如果要打印的字段太多,想将多余的字段放到新的一页中咋办?在线等..内详...
- 高手请进,关于显示器分辨率的改变问题
- 请问谁有中文的dephi组件说明???高分求资料!谢谢!
- 各位大侠请帮忙,急!急!急!急!关于数据表合并的问题
- delphi怎么操作excel表的控件,用delphi生成一个新的excel表,再在表中增加10个条码,谢谢!
- 上次20分,没人回答,这次总该好了吧!!!!!
- delphi 中怎么强制把数值转换为字符串?
- interbase中的sql语句有没有直接实现两个数相乘的函数?
var
sqlstr: string;
isInArea: integer;
begin
Result := -1;
with dm.MyQuery do
begin
close;
sqlstr := 'select dbo.fn_AreaIsUsernoInTSPCard(:CardSN,:CardPassword) as Reval ';
try
sql.Text := sqlstr;
parameters.ParamByName('CardSN').Value := FCardInfo.UserId;
parameters.ParamByName('CardPassword').Value := FCardInfo.CardPassword;
open;
if not eof then
begin
isInArea := strtointdef(FieldByName('Reval').AsString,-1);
Result := isInArea;
end;
finally
close;
end;
end;
end;GetInArea 就是一个 SQL Server中的自定义函数
只不过是你要先在数据库中建立此函数才行如:
Create Function kaikai(@a int,@b int)
returns int
as
begin
Declare @kk int
SET @kk=@a+@b+100
Return(@kk)
endupdate tb set 字段3=kaikai(字段1,字段2)
kaikai就是你建立的函数名称,上面的update语句调用结果就是实现更新 字段3值=字段1+字段2+100至于更复杂的算法函数,建议翻书或者baidu,google去吧