我用pdo插入到sqlite3数据库中有一点麻烦.您将不得不以PDO的愚昧为由,似乎从
Python的数据库界面来看,这是非常外来的.
所以这是我的问题.我有一个简单的插入:
$dbh = new PDO('sqlite:vets.db'); $count = $dbh->exec("INSERT INTO vets(name,email,clinic,streetname,citystatezip,link,phone,fax,animal,region,visible) VALUES ($name,$email,$clinic,$streetname,$citystatezip,$link,$phone,$fax,$animal,$region,$visible)"); $dbh = null;
我只想在我的数据库上执行该sql命令并完成它.虽然执行此脚本不会导致错误,但它不会更新数据库.我已经尝试了对数据库本身的各种权限,甚至使其成为777,但并没有改变.
有人可以帮我吗
PDO的一大优点在于可以创建准备好的语句.这是我的一个PHP项目的一些代码:
$qry = $db->prepare( 'INSERT INTO twocents (path,name,message) VALUES (?,?,?)'); $qry->execute(array($path,$name,$message));
你可以看到,我使用?在那里我要插入一个值,然后我用一个值的数组执行查询,该数组应该被替换为问号.
如果这样做,您的查询将更安全,更有可能工作(因为如果直接在查询中插入变量,缺少的值会阻止查询工作).