2016-10-13 7 views
1

の取得:、私はこれを実行しようと私は(MySQLを使用して)次のコードでデータベースを作るために私に指示codeiniterチュートリアル、以下の午前のSQLエラーにPHP

$sql = "create database login; 
      CREATE TABLE IF NOT EXISTS `user_login` (
      `id` int(11) NOT NULL AUTO_INCREMENT, 
      `user_name` varchar(255) NOT NULL, 
      `user_email` varchar(255) NOT NULL, 
      `user_password` varchar(255) NOT NULL, 
      PRIMARY KEY (`id`) 
      ) "; 

を自分のPHPコードを使用しますが、私はこのエラーが発生し続けており、解決方法はわかりません。

Error creating table: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'CREATE TABLE IF NOT EXISTS `user_login` (`id` int(11) NOT NULL AUTO_INCREM' at line 2 

考えられないことはありません。

+0

あなたのPHPコマンドで一度に2文を実行することはできません。 –

+0

分割して2つのステートメントとして実行します。それとも、[Codeigniterの移行機能を使用する](https://www.codeigniter.com/user_guide/libraries/migration.html)。 – tadman

+0

@tadmanだから私はデータベースを作成し、テーブルを作成する分割する必要があるのですか? – Tjazz

答えて

2
create database login; 

CREATE TABLE IF NOT EXISTS `user_login` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `user_name` varchar(255) NOT NULL, 
    `user_email` varchar(255) NOT NULL, 
    `user_password` varchar(255) NOT NULL, 
    PRIMARY KEY (`id`) 
) 

別々に実行される2つのコマンドです。あなたは、テーブルを作成しようとする前に作成したデータベースを持っている - SQLのクライアントを介して、またはのようなものを実行することによって、次のいずれか

$sql1 = 'create database login;'; 
$sql1->execute(); 

$sql2 = 'CREATE TABLE IF NOT EXISTS `user_login`...'; 
$sql2->execute(); 
関連する問題