[英]PHP and MYSQL database connection and table creation only once
我正在為我的學術開發一個小應用程序。 我有一個注冊表和一個log_in表。 這是我想要的,我有一個數據庫配置文件,其中包含“ 連接到服務器,創建數據庫和創建表查詢 ”。 我已將此數據庫文件包含在我的注冊表單頂部,以便在加載頁面時“ 查詢應執行並僅創建數據庫和表 ”。 但問題是查詢是第一次成功執行,但是當再次加載注冊頁時,它會提示錯誤“DATABASE ALREADY EXISTS”。 讓我開心。 我已經附加了db.php代碼..
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$connect = mysql_connect($dbhost, $dbuser, $dbpass);
if (!$connect) {
die('SERVER CONNECTION FAILED...\n: ' . mysql_error());
}
;
$sql = 'CREATE DATABASE USERS';
$retval = mysql_query($sql, $connect);
if (!$retval) {
die('DATABASE CREATION FAILED\n: ' . mysql_error());
}
;
$sql = "CREATE TABLE USERS( " . "Memberid int(10) NOT NULL AUTO_INCREMENT,
" . "Name varchar(100) NOT NULL,
" . "Username varchar(20) NOT NULL,
" . "Password varchar(10) NOT NULL,
" . "Email varchar(20) NOT NULL,
" . "Activation varchar(40) DEFAULT NULL,
" . "Status int(1) NOT NULL DEFAULT '1',
" . "PRIMARY KEY (`Memberid`)); ";
mysql_select_db('USERS');
$retval = mysql_query($sql, $connect);
if (!$retval) {
die('COULD NOT CREATE TABLE\n: ' . mysql_error());
}
;
mysql_close($connect);
?>
<html>
<body>
//registration form code
</body>
</html>
如果不存在,則查詢僅創建一次數據庫
CREATE DATABASE IF NOT EXISTS DBName;
如果表不存在,則查詢僅創建一次
CREATE TABLE IF NOT EXISTS tablename;
您只能創建一次數據庫/表。
更改
CREATE DATABASE
至:
CREATE DATABASE IF NOT EXISTS
應對表創建語句應用相同的更改。
試試這個改變
CREATE DATABASE IF NOT EXISTS USERS
對於桌子
CREATE TABLE IF NOT EXISTS tablename;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.