| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1290 人关注过本帖
标题:sql语句的问题
只看楼主 加入收藏
rindybo
Rank: 2
等 级:论坛游民
帖 子:126
专家分:51
注 册:2007-3-8
结帖率:100%
收藏
 问题点数:0 回复次数:4 
sql语句的问题
本人刚接触delphi
在数据库中有张表
字段是 name nvarchar(20)
        age int
两个字段
sql语句是这样写的
sql:='insert into [tablename] values('''+edtname.Text+''','+strtoint(edtage.Text)+')'
但总是提示sql语句错误!
请帮我看下怎么改,谢谢
搜索更多相关主题的帖子: sql 语句 
2008-03-12 16:20
心~梦
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-3-22
收藏
得分:0 
将括号里面的.text去掉看看
2008-03-23 11:17
心~梦
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-3-22
收藏
得分:0 
edtname.Text edtage.Text 这两个.text
2008-03-23 11:18
provoke
Rank: 2
来 自:广州
等 级:新手上路
威 望:5
帖 子:175
专家分:0
注 册:2007-6-14
收藏
得分:0 
sql:='insert into [tablename] values('''+edtname.Text+''','+strtoint(edtage.Text)+')'

sql是String类型的,把strtoint()的整数结果赋值绩给字符串类型的变量,能不错吗
在Delphi中,SQL语句是字符串类型,在数据库系统中数字字段可以不用引号引起来,但那是提交到数据库系统后的形式,就相当于:
insert into [tablename] values('rindybo',20)
而提交到数据库系统之前在Delphi里构造的时候,上面那一串是字符串来的,只是少了两个引号:
sql:='insert into [tablename] values('''+edtname.Text+''','+edtage.Text+')'

假如在edtname和edtage两个编辑框里分别输入rindybo20

要搞清楚引号的用法,不要表错情了

爱我至爱,至死不渝!
2008-03-23 13:39
shuihan20e
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-24
收藏
得分:0 
这个语句如果你不确实可以SHOWMESSAGE一下
另外可以写成参数化的
sql:='INSERT INTO [tablename] VALUES (:v1,:v2)';
parameters.ParamByName('v1').AsString=EdtName.Text;
parameters.ParamByName('v2').AsInteger:=StrToInt(EdtAge.Text);
2008-03-24 12:21
快速回复:sql语句的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011115 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved