我是用Delphi开发数据库
学生成绩表(学号,课程号,分数)
其中三个字段中“分数”是 float 型
(其他都没问题)
当我用Query控键向表“学生成绩表”插入记录时使用下面语句:Query1.SQL.Clear; //1
Query1.SQL.Add('insert into 学生成绩表 values('''+edit_x_num.text+''','''+edit_k_num+''','); //2
Query1.SQL.Add(''''+f+''')'); //3
Query1.SQL.Add.ExecSQL; //4其中edit_x_num,edit_k_num分别是获得学号,课程号的输入框,而 f 是获得初值的 float变量
现在问题在于:3 ,因为f不是string型,所以第3句报错:string不匹配float
后来我尝试把3改为:
Query1.SQL.Add( f)'); //111
Query1.SQL.Add(:f)'); //222
Query1.SQL.Add('+f+')');//333
都出现错误:
对111句,它认为f这里是一个字符串,而不是一个变量
对222,333也不能用。那位仁兄知道这里如何使用变量?不吝赐教,小弟感激不胜
学生成绩表(学号,课程号,分数)
其中三个字段中“分数”是 float 型
(其他都没问题)
当我用Query控键向表“学生成绩表”插入记录时使用下面语句:Query1.SQL.Clear; //1
Query1.SQL.Add('insert into 学生成绩表 values('''+edit_x_num.text+''','''+edit_k_num+''','); //2
Query1.SQL.Add(''''+f+''')'); //3
Query1.SQL.Add.ExecSQL; //4其中edit_x_num,edit_k_num分别是获得学号,课程号的输入框,而 f 是获得初值的 float变量
现在问题在于:3 ,因为f不是string型,所以第3句报错:string不匹配float
后来我尝试把3改为:
Query1.SQL.Add( f)'); //111
Query1.SQL.Add(:f)'); //222
Query1.SQL.Add('+f+')');//333
都出现错误:
对111句,它认为f这里是一个字符串,而不是一个变量
对222,333也不能用。那位仁兄知道这里如何使用变量?不吝赐教,小弟感激不胜
query1.sql.add(''+floattostr(f)+''' ');
Query1.SQL.Add('insert into 学生成绩表 valu('''+edit_x_num.text+''','''+edit_k_num+''',:a); //2
Query1.Parameters.ParamByName('a1').Value:=f;
Query1.SQL.Add.ExecSQL; //4
Query1.SQL.Add('insert into 学生成绩表 valu('''+edit_x_num.text+''','''+edit_k_num+''',:a); //2
Query1.Parameters.ParamByName('a').Value:=f;
Query1.SQL.Add.ExecSQL; //4刚才多写了一个 1 字
a,b,c :integer;Query1.SQL.Clear; //1
Query1.SQL.Add('insert into 学生成绩表 valu(:a,:b,:c)');
Query1.Parameters.ParamByName('a').Value:=edt_x_num.text;
Query1.Parameters.ParamByName('b').Value.....
.....Query1.SQL.Add.ExecSQL; //4