php MySQL数据表的创建问题,求指教!

一直没搞明白MySQL数据表创建的问题,甚至也不明白一般情况下,是在DOS命令中创建呢还是在PHP中?——还有,数据表到底是个什么概念?尝试着在php中写了一段代码来创建... 一直没搞明白MySQL数据表创建的问题,甚至也不明白一般情况下,是在DOS命令中创建呢还是在PHP中?——还有,数据表到底是个什么概念?

尝试着在php中写了一段代码来创建数据表,但是是错的,求各位帮指点一下到底错在了哪里?谢谢!

代码如下:
<?php
$host="localhost";
$user="root";
$password="root";
$db_name="test";
$tb_name="mytb01";

$link=mysql_connect("localhost","root","root")or die("服务器连接失败!".mysql_error());
$mysql_selected=mysql_select_db("test",$link)or die("数据库连接失败!".mysql_error());
mysql_query("set names utf-8");

$result=mysql_query("create table test(name varchar(30),numb varchar(40),age int(5)")or die("数据表创建失败!".mysql_error());
?>

报错如下:
数据表创建失败!You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
展开
 我来答
阳光上的桥
2014-04-24 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
数据库、表的概念:可以把数据库理解为文件夹,表理解为文件,所有的数据都必须存放在表里面,表属于唯一的一个数据库

在DOS下和PHP里面建表语句是一样的,都可以。其它查询语句也是一样的。

你的语句少了反括号,正确的是:
$result=mysql_query("create table test(name varchar(30),numb varchar(40),age int)");

我取消了你为int类型指定的长度。
追问
我用你写的运行了一下,发现是OK的。
但是,你的这句,除了取消了int长度,没发现有别的不同啊,有少了反括号吗?——还有,为什么需要取消int长度呢?
求再指教,谢谢!
追答
int的长度我理解始终是4字节,不知道不指定长度对实际有无影响,你可以百度搜索一下。

我添加括号的,你以前是int(5),我修改为了int),删除一对括号,增加了反括号。
vvviop
2014-04-24 · TA获得超过935个赞
知道小有建树答主
回答量:1793
采纳率:0%
帮助的人:1355万
展开全部
$result=mysql_query("create table test(name varchar(30),numb varchar(40),age int(5))")or die("数据表创建失败!".mysql_error());

注意 int(5) 后少了个 )
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式