sql.add('where copy(字段名,1,2)='123'')
这个语句错误了,应该怎么写?

解决方案 »

  1.   

    oracle: 'where substr(字段名,1,2)='''123''''
    sqlserver: 'where substring(字段名,1,2)='''123''''
      

  2.   

    copy是delphi的函数sql.add(' where substring(字段名,1,2)='''+'123'+'''');
      

  3.   

    1 sql.add('where copy(字段名,1,2)=''123''')
    2 copy(字段名,1,2)是长度为2 ,'123'长度为3,肯定不等啊。
      

  4.   

    sql.add( + 'where substring(字段名,1,2)='''+'123'+'''');
      

  5.   

    在ORACLE中有一个函数SUBSTR,不知道其他别的数据库是不是这样的写法,用法如下:
    WHERE SUBSTR(字段名,N,M)=字符串A
    从字段名的第N位,取M个字符和字符串A比较,例如:WHERE SUBSTR(字段名,1,3)=‘123’
      

  6.   

    提示错误:invalid use of keyword.token:,1,2)=‘123’ 是怎么回事?
      

  7.   

    str1:='40';
    query1.sql.add('where substring(车站名,1,2)=str1');
    这个语句应该怎么改?
      

  8.   

    sql.add('where'+ copy(字段名,1,2)+'''=''123''')
    把函数都写到引号里了,所以出错,还有风兄说的也是很对的!
      

  9.   

    query1.sql.add('where substring(车站名,1,2)=str1');
    不是同样的啊!
    query1.sql.add('where'+ substring(车站名,1,2)+'='+str1)
      

  10.   

    楼上的,你说的我试了,怎么也是提示不行呀。
    str1:='40';
    query1.sql.add('where substring(车站名,1,2)=str1');
    这个语句应该怎么改?
      

  11.   

    提示:[Error] Undeclared identifier: 'substring'
      

  12.   

    头大,都是这么说的,可是为什么我写:
    字符串str1被初始化为:'40':
    query1.sql.add('where substring(czno,1,2)=str1');
    提示错误:invalid use of keyword.token:,1,2)=str1
    到底应该怎么改?
      

  13.   

    头大,都是这么说的,可是为什么我写:
    字符串str1被初始化为:'40':
    query1.sql.add('where substring(czno,1,2)=='''+gwdsx+'''');
    提示错误:invalid use of keyword.token:,1,2)='50'
    到底应该怎么改?