运行环境:PHP5.3 + IIS6.0 ,数据库为sqlite 3$sql="insert into sj_sj (sbh,xmdm,ssrq,zdz) values ('1421001','1','2011-06-01',180);"
try {
    $count=$sqlConn->exec($sql);
}catch(Exception $e){
    echo "向sqlite表插入数据时出错:".$e->getMessage();
}    现象:
    这个insert语句在外部环境中可以成功插入数据,表明这个语句的语法正常。但是在php 程序里执行$count=$sqlConn->exec($sql)这一行后返回false ,而且数据没有插入到表里。请教是什么问题?

解决方案 »

  1.   


    <?php 
      $db = sqlite_open("你的数据表名");
      $sql="insert into sj_sj (sbh,xmdm,ssrq,zdz) values ('1421001','1','2011-06-01',180);"
      $query = sqlite_query($db, $sql);
    ?>
      

  2.   

    我不知道你的日期是怎么设置的,我在做桌面开发的时候就碰到过,多数都是日期的格式,那个-貌似(我可能忘记)SQLITE是用/
      

  3.   


    $sql="insert into sj_sj (sbh,xmdm,ssrq,zdz) values ('1421001','1','2011-06-01',180);"
    修改为$sql="insert into sj_sj (sbh,xmdm,ssrq,zdz) values ('1421001','1','2011-06-01',180)";
      

  4.   

    我用的是pdo 访问sqlite ,所以二楼的办法不行。后面两种方法都试过了,还是不行。关键是也没报错,所以不知道问题在哪里。能不能从哪里看到php后台执行的日志之类的东西??
      

  5.   

    问题解决了。原来是操作系统权限问题。先取消简单文件共享。然后为sqlite数据库文件设置iuser帐号可读写就行了。