delphi中取数据库表字段的字符串处理

1. 创建数据库 pbscgl2. 创建表 usrLastLzk 和 usrLzk,脚本在usrlzk.sql文件中。3. 导入数据, 数据分别在 usrlastlzk.txt 和 usrLzk.txt4. 创建程序 UpdateLzk5. 要求:   1)usrlastlzk表vLzk值中大于500的初始化成1, 如: 12-645, 值为645, 初始化成 12-1   2)小于500的,把usrLzk表中最大的vLzk值赋给usrLastLzk表vLzk值, 如: usrLzk.vLzk=12-30, usrLzk.vLzk=12-70, 则usrLzk.vLzk=70.这样的话,我要怎么SQL语句怎么写?

1) udpate usrlastlzk set vLzk=1 where vLzk>=500;
题目 是大于500,但2中是小于500,等于500的没有说,根据个人猜测,应该是大于等于500的话归1

2) udpate usrlastlzk
set vLzk=(select max(vLzk) from usrLzk where usrLzk.usrId = usrlastlzk.usrId)
where vLzk<500;
不知道你的表结构哈,但usrLzk与usrlastLzk应该是有关联的,而关联的字段应该是类似usrId之类的。

供参考 。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-23
用delphi编程的话,不要希望在sql语句中一次完成,可以先用代码从txt中读入内容,再用代码转换到变量,然后用sql将变量的值写入数据库

DELPHI 数据库字符串的提取
str:string;begin str:=adoquery1.FieldByname('字段名').ASstring;\/\/从数据库取出字符串 ListBox1.Items.Delimiter:=',';\/\/设置分隔符 ListBox1.Items.DelimitedText:=str;\/\/设置要分隔的字符串 end;

delphi怎么把数据库取出的字符串转换成窗口的name值并show出来?_百度...
要实现你这个思路,创建窗体这些操作都得用API自己来实现,比较麻烦,而且容易出错,你可以把窗口标题保存在数据库中,取出后给标题赋值就行了:procedure tform17.OpenA(sender:TObject);begin if not Assigned(Form1) then \/\/判断子窗体是否已打开 begin Form1:=TForm1.Create(Self);Form1.Capti...

delphi提取字符串
1.读入文本 2.先按行提取!!!3.逐字检索,行中寻找特殊标记“是”4.发现标记后,打开开始记录开关 5.开始记录开关打开后,一直添加记录检索过的字,并且行中寻找特殊标记“人”6.发现标记后,打开结束记录开关 7.结束记录开关打开后,对记录的字符进行处理,添加到文本框中,且跳出当前行!。。继...

delphi中关于截取字符串的问题
s1,s:string;begin s1:='0000000103-JGYGY' ;或者s1:=edit1.text;通过界面输入,也可通过数据库表字段赋值 i:=pos('-',s1);s:=copy(s1,1,length(s1)-i)end;S得到的值就是0000000103 这是最简单的方法了。

delphi中adoquery怎么取得查询结果中第一条的字段值?
qry1.First;\/\/取第一条数据 edit.Text := qry1.FieldByName(字段名).AsString;这样就可以啦!想获取什么值都可以用query.fieldbyname(字段名).asstring获得字符串或者query.fieldbyname(字段名).asinteger获得整数值!

delphi数据库编程问题:数据库中一字段值字符型(办字[2013]1号),则么...
因为自动编号的ID字段肯定是越后添加的记录ID值越大,根据你的使用情况来看,后添加的其文号也应该是更大的。这样取出来的记录集的第一条记录就是与[2013]相同的最大文号。下面再来解决文号自动加1的问题:先要在uses里添加StrUtils,这里面包含了很多字符串处理的函数,必不可少。然后用如下代码来...

DELPHI怎么获取SQL指定字段的字段类型?
var c : TFieldType;begin c := ftString;\/\/根据enum得到字符串 showmessage(GetEnumName(Typeinfo(TFieldType),Ord(c)));\/\/ 根据字符串得到枚举类型 c := TFieldType(GetEnumValue(Typeinfo(TFieldType),'ftInteger'));showmessage(GetEnumName(Typeinfo(TFieldType),Ord(c...

delphi 截取某个字符之前的字段,,如 1234567-9,要分别得到 - 之前的...
copy(string,1,pos('-',string)-1)copy(string,pos('-',string)+1,length(string)-pos('-',string))

delphi 获取字符串之间多个字符内容
一、函数说明:POS:获取特定字符所处字符串的位置,返回数据类型为整型。POS共有两个参数:POS(特定字符或字符串,源字符串)。COPY:字符串截取,返回数据类型为字符型。COPY共有三个参数:COPY(源字符串,起始截取位(整型,可为变量),截取位数(整型,可为变量))。二、实例演示(笔者以截取特定...

Delphi的分割字符串或提取字符串?
很简单 var ss: Tstringlist;然后在程序中 ss := tstringlist.Create;ExtractStrings([','], [' '], pchar(S), ss);然后你需要的字符就会被分割到ss.Strings[0]至ss.Strings[ ss.Count - 1]之间的数组中,再怎么放入x和y不用写了吧。

相似回答
大家正在搜