尊敬的论坛用户!需要您的帮助!
告诉我如何是对的?任务很简单,需要记录用户对数据库的访问。
- 我们连接到数据库。
- 更新表中的访客记录。
- 如果访问者是第一次,没有记录怎么办,那我们插入记录。
- 对于部署(对于第一次运行):如果没有表怎么办,那么我们创建一个表。
问题 1:我担心每次更新(update)一堆空闲操作(create,insert),也许这是某种不同的解决方式,告诉我。
问题2:如何解决第一次启动时需要一次的任务?
问题三:连接数据库。你能把它移到另一个文件吗?但是这样的话移动文件的时候就会出问题,如果你离开了,那么不同文件中的数据库的连接就不断的打开关闭。
$db = new PDO('sqlite:file.sqlite');
$db -> exec("CREATE TABLE IF NOT EXISTS 'tableName' (
id PRIMARY KEY AUTOINCREMENT,
user TEXT UNIQUE NOT NULL,
visitCounter INTEGER DEFAULT '0'
)");
$db -> exec("INSERT OR IGNORE INTO 'tableName' (user) VALUES ('user1')");
$db -> exec("UPDATE 'tableName' SET visitCounter = visitCounter + 1 WHERE user = 'user1'");
unset($db);
1.2. 您将不得不执行这些操作,因为您需要检查该条目是否真的已经存在。我当然不知道你的系统架构。但是我最好把它随着用户的创建一起添加到必要的表中,这样就不用每次都写INSERT了
3.连接到数据库应该在一个单独的文件中,在你需要使用数据库的脚本中,你可以使用
require()