运行后,127.0.0.1/phpmyadmin登陆后只发现新数据库,数据库里面显示没有表,求解~~哪里写错了呢?<?php 
$db=mysql_connect("127.0.0.1:3306","root");
if(!$db)
{
die('创建数据库失败! '.mysql_error());
}if(mysql_query("CREATE DATABASE MyLife",$db))
{
echo '数据库创建成功!';
}
else
{
echo '数据库创建失败! '.mysql_error();
}
//选择数据库
mysql_select_db("MyLife",$db);
//定义创建表的语句
$sql="CAEATE TABLE Setting
(
Name varchar(15),
Value varchar(15)
)";
//创建表
mysql_query($sql,$db);mysql_close($db);
?>

解决方案 »

  1.   

    1:数据库连接没有密码
    2:新建的表没有主键。你起码要有:id int not null auto_increment primary key,
      

  2.   

    为什么不直接在phpmyadmin里面创建表,添加数据之类的,简单方便,还不用担心sql语句写错了。
      

  3.   

    直接在phpmyadmin  里面建多好啊,楼主实在要写的话,可以先建一个表导出它的结构出来看,然后在跟自己的语句对比、找错,效果应该会不错
      

  4.   

    数据库没有密码,看见那个密码参数是可选的,以为没密码就不用了,现在传了空密码过去
    其实我认为密码不是问题,因为我在没数据库的时候,运行代码已经发现数据库创建出来了,证明已经连接到数据库了
    就是创建表那里有问题现在已经声明了主键,还是不出现表,求解~~
    $sql="CAEATE TABLE Setting
    (
    Name varchar(15) NOT NULL AUTO_INCREMENT,
    Value varchar(15)
    )";mysql_query($sql,$db);
    其他朋友,我的目的是学习用PHP去操作数据库,而不是依赖后台操作平台
    所以我要从连接,创建,追加,修改,删除这些动作开始学起
      

  5.   

    CAEATE ==>CREATE  
      

  6.   

    非常抱歉,错字修正了..然后还是无法创建,但是用了例子的代码就能创建,也不知道区别在哪里
    失败的代码:
    $sql="CREATE TABLE Setting
    (
    Name varchar(15),
    Value varchar(15),
    )";
    mysql_query($sql,$db);==========
    成功的代码
    $sql = "CREATE TABLE Setting 
    (
    FirstName varchar(15),
    LastName varchar(15),
    Age int
    )";
    mysql_query($sql,$db);
      

  7.   

    Value varchar(15),把后面的逗号去掉!
      

  8.   


    ..我试过给成功代码那个 Age int加,号都成功,于是认为是否,号结尾不是问题- -
      

  9.   

    Value varchar(15),后面的逗号去掉。