第一个:
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into table');
adoquery1.sql.add('(列名1,列名2,列名3,.....)');
adoquery1.sql.add('values('''+trime(edit1.text)+''','''+trim(edit2.text)+''','''+trim(edit3.text)+''',.....)');
adoquery1.execsql;
请问当“列名3”是整型数据或是日期型时,在values的参数应该怎么写,我不要paramerters来赋值。
第二个:
  如何在Tedit中判断用户输入的是汉字。比如:'abc你好as你也不错d'
我意思是我想获得'abc你好as你也不错d'里面汉字的拼音首字母,得到的结果
是:“abcNHasNYBC",怎样才能做到呢????

解决方案 »

  1.   

    得到的结果应该是:"abcNHasNYBCd";
      

  2.   

    整数型的:
    StrtoInt(Edit3.Text)日期:
    datetoStr(Edit3.Text)
      

  3.   

    日期型和字符型SQL写法一样 前后都要加''  整数型不用加if ord(string[i])>127 then string[i]和string[i+1]是一个汉字的两个字节
    以下函数可以得到汉字首字母
    //////////////////////////////////////////////////////////////////////////// 
    // 函数: GetPYIndexChar(strChinese: string;bUpCase: Boolean = True): char; 
    // 
    // 函数功能:获取汉字的拼音首字符. 
    // 例: GetPYIndexChar('程') 将返回'C'. 
    // 
    // 注意:对于多于一个汉字的输入(string类型)只有第一个有效,但不会产生错误 
    // 例如,GetPYIndexChar('程序')也将返回'C'. 
    // 
    // 第二个参数决定返回大写还是小写 , 缺省为大写 . 
    //////////////////////////////////////////////////////////////////////////// 
    function GetPYIndexChar(strChinese: string;bUpCase: Boolean = True): char; 
    begin 
    // 根据汉字表中拼音首字符分别为“A”至“Z”的汉字内码范围, 
    // 要检索的汉字只需要检查它的内码位于哪一个首字符的范围内, 
    // 就可以判断出它的拼音首字符。 
      case WORD(strChinese[1]) shl 8 + WORD(strChinese[2]) of 
        $B0A1..$B0C4 : result := 'A'; 
        $B0C5..$B2C0 : result := 'B'; 
        $B2C1..$B4ED : result := 'C'; 
        $B4EE..$B6E9 : result := 'D'; 
        $B6EA..$B7A1 : result := 'E'; 
        $B7A2..$B8C0 : result := 'F'; 
        $B8C1..$B9FD : result := 'G'; 
        $B9FE..$BBF6 : result := 'H'; 
        $BBF7..$BFA5 : result := 'J'; 
        $BFA6..$C0AB : result := 'K'; 
        $C0AC..$C2E7 : result := 'L'; 
        $C2E8..$C4C2 : result := 'M'; 
        $C4C3..$C5B5 : result := 'N'; 
        $C5B6..$C5BD : result := 'O'; 
        $C5BE..$C6D9 : result := 'P'; 
        $C6DA..$C8BA : result := 'Q'; 
        $C8BB..$C8F5 : result := 'R'; 
        $C8F6..$CBF9 : result := 'S'; 
        $CBFA..$CDD9 : result := 'T'; 
        $CDDA..$CEF3 : result := 'W'; 
        $CEF4..$D188 : result := 'X'; 
        $D1B9..$D4D0 : result := 'Y'; 
        $D4D1..$D7F9 : result := 'Z'; 
        else 
                   result := char(0); 
      end; 
      if not bUpCase then 
      begin // 转换为小写 
        result := Chr(Ord(result)+32); 
      end; 
    end; 
      

  4.   

    留下电子邮件,我给你发一个拼音码模块!
    为什么不用参数(paramerters)负值呢?用参数多简单呀!
      

  5.   

    首先感谢你:vitamin_ok(new水水)
      .cn
      

  6.   

    如果你不用参数传递的方法,你就必须通过字符串组合成SQL语句来,日期型字段:  '''+DateStr+'''数字类型字段:'+NumStr+'字符型字段:'''+Str+'''
      

  7.   

    上面的只能处理一级汉字,二级汉字去下面的帖子:
    http://expert.csdn.net/Expert/topic/1315/1315163.xml?temp=.24461
      

  8.   

    你是不是有问题呀!女神[DELPHI]提供的参数为什么你就不用呢!
    唉!这二年真是什么鸟都有!