我在窗口中加入query1组件,并建立好与sql的连接,其sql属性设为
select passwd from group;
where userid=:userid;当我编译可以通过,可是运行时提示:field userid has unknown type
可是我在sqlserver上已经建立group表,而且其属性userid已定义为varchar,到底哪里还要声明

解决方案 »

  1.   

    如果是执行sql语句的话,应该是
    strsql:='select passwd from group where userid='''+userid+'''';
    query1.open(strsql);如果是使用query1组件参数查询的话,应该建立参数,也就是设置Params属性
    如果你设置一个Params为userid的话,那么查询语句应该是这样query1.sql.add('select passwd from group where userid=:userid');
    query1.paramsbyname('userid').asstring:=userid;
    query1.open冒号“:”只在利用参数查询的语句中使用
      

  2.   

    可是我本来就是用这种方法实现,但是运行时提示:invalid use of keyword token:group.请好心人帮帮我,我现在很急,后天就要交程序了,本人初学数据库,碰到了很多问题。现在正值期末考,没时间编程,不知道谁有现成的程序,能发给我好吗?不要太复杂的。我现在做的是人事管理系统,如果没有人事管理系统,其它程序也可以。
      

  3.   

    query1.clear;
    query1.sql.add('select passwd from group where userid=:userid');
    prepare;
    query1.paramsbyname('userid').asstring:=userid;
    query1.open;
    即可