设为首页收藏本站

Delphi乐园 开发者的家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 73|回复: 3

知道的帮帮忙 [复制链接]

Rank: 4

该用户从未签到

金钱
60405
11971
0
在线时间
0 小时
阅读权限
10
精华
0
积分
0
UID
9
发表于 2016-9-7 20:52:17 |显示全部楼层
分享到:
用动态参数

query.sql.text='select * from rules where project=:pid';

query.paramters.parambyname('pid').value:=pid;

query.open;
用动态参数

query.sql.text='select * from rules where project=:pid';

query.paramters.parambyname('pid').value:=pid;

query.open;


总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法





总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法以

及SQL语句每日期格局的表示(#)、('')

在Delphi中进行字符变量连接相加时单引号用('''),又引号用('''')表示

起首定义变量

var

AnInt:integer=123;//为了便利在此都给它们赋初值。固然可能在引赋初值袈溱某些情况下纰谬

AnIntStr:string='456';

AStr:string='abc';

AFieldName: string='字符型编号';

ATableName: string='YourTable';

ADate:Tdatetime=now;

Adoquery1:tadoquery;

1,Delphi语句

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123';

等价于

adoquery1.sql.text:=

'select '+AFieldName+' from '+ATableName+' where '+AFieldName

+'='''+AStr+''' and 整型编号='+AnIntStr;

也等价于

adoquery1.sql.text:=

'select '+AFieldName+' from '+ATableName+' where '+AFieldName

+'='+QuotedStr(AStr)+' and 整型编号='+Inttostr(AnInt);

传到数据库办事器为:

select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123



2,Delphi语句每日期表示

对于access数据库:

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段=#2003-12-01#';

等价于:

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段=#'+FormatDateTime('yyyy-MM-dd',now)+'#';

传到办事器为:

select 字符型编号 from YourTable where 日孚型字段=#2003-12-01#

对于MSSQL数据库:

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段='2003-12-01'';

等价于:

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段='''+FormatDateTime('yyyy-MM-dd',now)+'''';

也等价于:

等价于:

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段='+QuotedStr(FormatDateTime('yyyy-MM-dd',now));

传到办事器为:

select 字符型编号 from YourTable where 日孚型字段='2003-12-01'

日期字段还可以如许表示

Delphi语句

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段>='+QuotedStr(FormatDateTime('yyyy-MM-dd',now))

+' and 日孚型字段<='+QuotedStr(FormatDateTime('yyyy-MM-dd',now+1));//明天

等价于

adoquery1.sql.text:=

'select 字符型编号 from YourTable where 日孚型字段 between '+QuotedStr(FormatDateTime('yyyy-MM-dd',now))

+' and '+QuotedStr(FormatDateTime('yyyy-MM-dd',now+1));



如不雅用

adoquery1.sql.add();

情势又若何操作?请用Insert语句示例

adoquery1.sql.add(' insert into '+AtableName);

adoquery1.sql.add(' ( '+AFieldName+')');

adoquery1.sql.add(' values( '+quotedstr(AStr)+')');





总结下,趁便接点分

Rank: 4

  • TA的每日心情
    擦汗
    2013-8-10 13:51:20
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    金钱
    60395
    11991
    0
    在线时间
    1 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    2233
    发表于 2016-9-7 21:05:17 |显示全部楼层
    用动态参数

    query.sql.text='select * from rules where project=:pid';

    query.paramters.parambyname('pid').value:=pid;

    query.open;

    使用道具 举报

    Rank: 4

    该用户从未签到

    金钱
    60765
    11765
    0
    在线时间
    118 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    912
    发表于 2016-9-7 21:07:18 |显示全部楼层
    用动态参数

    query.sql.text='select * from rules where project=:pid';

    query.paramters.parambyname('pid').value:=pid;

    query.open;

    使用道具 举报

    Rank: 4

  • TA的每日心情
    擦汗
    2013-8-10 13:51:20
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    金钱
    60395
    11991
    0
    在线时间
    1 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    2233
    发表于 2016-9-7 21:15:18 |显示全部楼层


    总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法





    总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法以

    及SQL语句中日期格式的表示(#)、('')

    在Delphi中进行字符变量连接相加时单引号用('''),又引号用('''')表示

    首先定义变量

    var

    AnInt:integer=123;//为了方便在此都给它们赋初值。虽然可能在引赋初值在某些情况下不对

    AnIntStr:string='456';

    AStr:string='abc';

    AFieldName: string='字符型编号';

    ATableName: string='YourTable';

    ADate:Tdatetime=now;

    Adoquery1:tadoquery;

    1,Delphi语句

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123';

    等价于

    adoquery1.sql.text:=

    'select '+AFieldName+' from '+ATableName+' where '+AFieldName

    +'='''+AStr+''' and 整型编号='+AnIntStr;

    也等价于

    adoquery1.sql.text:=

    'select '+AFieldName+' from '+ATableName+' where '+AFieldName

    +'='+QuotedStr(AStr)+' and 整型编号='+Inttostr(AnInt);

    传到数据库服务器为:

    select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123



    2,Delphi语句中日期表示

    对于access数据库:

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段=#2003-12-01#';

    等价于:

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段=#'+FormatDateTime('yyyy-MM-dd',now)+'#';

    传到服务器为:

    select 字符型编号 from YourTable where 日期型字段=#2003-12-01#

    对于MSSQL数据库:

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段='2003-12-01'';

    等价于:

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段='''+FormatDateTime('yyyy-MM-dd',now)+'''';

    也等价于:

    等价于:

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段='+QuotedStr(FormatDateTime('yyyy-MM-dd',now));

    传到服务器为:

    select 字符型编号 from YourTable where 日期型字段='2003-12-01'

    日期字段还可以这样表示

    Delphi语句

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段>='+QuotedStr(FormatDateTime('yyyy-MM-dd',now))

    +' and 日期型字段<='+QuotedStr(FormatDateTime('yyyy-MM-dd',now+1));//明天

    等价于

    adoquery1.sql.text:=

    'select 字符型编号 from YourTable where 日期型字段 between '+QuotedStr(FormatDateTime('yyyy-MM-dd',now))

    +' and '+QuotedStr(FormatDateTime('yyyy-MM-dd',now+1));



    如果用

    adoquery1.sql.add();

    形式又如何操作?请用Insert语句示例

    adoquery1.sql.add(' insert into '+AtableName);

    adoquery1.sql.add(' ( '+AFieldName+')');

    adoquery1.sql.add(' values( '+quotedstr(AStr)+')');





    总结下,顺便接点分

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    delphi乐园微信公众号

    手机版|Delphi乐园 ( 冀ICP备11023363号-7 )    

    GMT+8, 2016-10-23 02:18

    Powered by Discuz! X2

    © 2001-2011 Comsenz Inc.

    公网安备 14090202000504号

    回顶部