用delphi做修改按钮的时候因为数据有空值 当数据为空时候不能修改报错显示错误类型的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用delphi做修改按钮的时候因为数据有空值 当数据为空时候不能修改报错显示错误类型的值相关的知识,希望对你有一定的参考价值。
with ADOQuery1 do
//将修改后的学生数据提交给数据表student
begin
SQL.Clear;
sql.Text:='update student set 学号=:a,姓名=:b,高数=:c,操作系统=:d,大学英语=:e,金融学=:f,土木工程=:g,专业=:h where 学号='+edit1.Text+'';
parameters.ParamByName('a').Value:=edit1.Text;
parameters.ParamByName('b').Value:=edit2.Text;
parameters.ParamByName('c').Value:=edit3.Text;
parameters.ParamByName('d').Value:=edit4.Text;
parameters.ParamByName('e').Value:=edit5.Text;
parameters.ParamByName('f').Value:=edit6.Text;
parameters.ParamByName('g').Value:=edit7.Text;
parameters.ParamByName('h').Value:=edit8.Text;
ExecSQL;
请问下 这个直接在下面的赋值语句中修改怎么修改 或者有什么别的方法
数字是float学号是int
那你应该在拼接sql语句前就判断不能为空的字段。如果为空就提示用户输入。
如果有值 但是类型有问题的话,可以加上try catch,获取错误信息追问
我就是要有空值的输入 因为不同专业有的课程不涉及到的课值就为空 如果全部课程都输入在修改就没有问题
追答那你的这种表设计就不合理啊 。
你直接做一个科目表、一个成绩表
成绩表 就3个字段 学号,科目,成绩
如果这个学生有10个科目
那么成绩表中就存10条数据。
当然 你的设计也可以
但是如果你这样设计的话 如果这个学生只有 高数,英语 没有 金融, 那你金融直接存空值。
是的 但是修改的时候 哪个科目有是空值然后对应的那条语句就出错
if trim(edit5.Text)='' then
parameters.ParamByName('e').Value:=varnull
else
parameters.ParamByName('e').Value:=edit5.Text;修改成这样后会自动给空值的项赋值为1
varnull
这啥东西????
parameters.ParamByName('a').Value:=edit1.Text;
另外还得修改,字段的属性,为可以为空,数字字段,不屑修改,它身已经被0填充.本回答被提问者和网友采纳 参考技术D 用try语句追问
前面有try没复制下来
bat如何解决文件名里有空格
最近给一件歌曲编号,朋友说可以用ren来搞。试了一下果然不错 但文件名中有空格的却无法识别。比如英文歌曲。 ren a b.mp3 001a b.mp3. ab这之间有个空格。谢谢
批量去除文件名中的空格:
步骤1,安装并打开下图软件工具,点击软件左上角的【添加文件】蓝色按钮,将需要修改名称的文件批量添加到软件中。
步骤2,这时候在左边可以看到设置窗口,命名方式选择“替换”;在查找内容右边的方框内输入一个空格。其他都不用设置了,这时候在右边可以预览到新文件名中已经没有了空格。
步骤3,确认无误后就点击右上角的【开始重命名】按钮,启动软件程序,当弹出“重命名成功”的提示框说明批量处理完成了。
步骤4,打开查看处理后的文件可以看到,所有文件名中已经没有了空格。
参考技术A @echo offcolor f2
echo 我可以将【文件夹】目录及子目录[去除文件名空格]整理到-目录表格.xls
pause
:--------------------------------------
setlocal enabledelayedexpansion
:--------------------------------------
for /f "tokens=*" %%j in ('dir/b') do (
set fn=%%j
echo 替换前:!fn!
set fn=!fn: =!
echo 替换后:!fn!
:将fn字符串中的每一个空格(" ")替换成空字符("")。
ren "%%j" !fn!
)
:--------------------------------------
set pp=%~dp0
echo %pp%
:--------------------------------------
for /d /r . %%i in (*) do (
:更新路径,将有空格的路径改为除去空格后的路径,才能进入
for /f "tokens=*" %%l in (!i!) do (
set pt=%%l
set pt=!pt: =!
set i=!pt!
)
echo 路径 %%i
cd %%i
:-------------------
for /f "tokens=*" %%j in ('dir/b') do (
set fn=%%j
echo !fn!
set fn=!fn: =!
echo !fn!
:将fn字符串中的每一个“ ”替换成“”空字符。
ren "%%j" !fn!
)
)
:--------------------------------------
cd %pp%
echo %pp%
for /d /r . %%k in (*) do echo %%k>>目录表格.xls
echo 已经将文件夹目录(不包括文件)生成到【目录表格.xls】
echo 如果希望更多bat功能可以发邮件给:973490770@qq.com
pause 参考技术B 有空格的在文件名前后添加英文的双引号即可,例如:
ren “a b.mp3” “001a b.mp3”本回答被提问者采纳
以上是关于用delphi做修改按钮的时候因为数据有空值 当数据为空时候不能修改报错显示错误类型的值的主要内容,如果未能解决你的问题,请参考以下文章