我正在学习一个 codeiniter 教程,它告诉我使用以下代码(使用 mysql)创建一个数据库:
$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
不知道它可能是什么。
最佳答案
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`)
)
是两个要分别执行的命令。在尝试创建表之前创建数据库 - 通过 SQL 客户端或执行类似的操作:
$sql1 = 'create database login;';
$sql1->execute();
$sql2 = 'CREATE TABLE IF NOT EXISTS `user_login`...';
$sql2->execute();
关于php - 获取sql错误PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40017567/