PHP操作MySQL,insert 语句无法执行,字符串求解~
在php调用mysql时候遇到问题想要创建一个名字为user的表,只有name和age两项,插入5组数据并echo出来,在insert那里我想依次插入名字为chris1,...
在php调用mysql时候遇到问题 想要创建一个名字为user的表,只有name和age两项,插入5组数据并echo出来, 在insert那里我想依次插入名字为chris1, chris2, chris3, chris4, chris5的名字 但是始终insert失败
代码:
<?php
$host='localhost';
$user_name='root';
$password='hey51fly';
$conn=mysql_connect($host, $user_name, $password);
if(!$conn){
die('failed to link to database:'.mysql_error());
}
$sql="create database haha";
mysql_query($sql);
mysql_select_db('haha');
$sql="create table users(name varchar(50) not null, age int(3) not null)";
mysql_query($sql);
$sql="use haha";
mysql_query($sql);
$oo="chris";
for($i=1; $i<=5; $i++){
//$name="chris".$i;
$name=$oo.$i;
echo "name=$name<br/>";
$age=$i+16;
$sql="insert into users values ($name, $i)";
mysql_query($sql);//------
}
$sql="select * from users";
$result=mysql_query($sql);
mysql_num_rows($result);
while($row=mysql_fetch_array($result)){
echo $row['name']."__".$row['age']."!!!<br/>";
}
mysql_close($conn);
echo "$sql"."hohoo";
?> 展开
代码:
<?php
$host='localhost';
$user_name='root';
$password='hey51fly';
$conn=mysql_connect($host, $user_name, $password);
if(!$conn){
die('failed to link to database:'.mysql_error());
}
$sql="create database haha";
mysql_query($sql);
mysql_select_db('haha');
$sql="create table users(name varchar(50) not null, age int(3) not null)";
mysql_query($sql);
$sql="use haha";
mysql_query($sql);
$oo="chris";
for($i=1; $i<=5; $i++){
//$name="chris".$i;
$name=$oo.$i;
echo "name=$name<br/>";
$age=$i+16;
$sql="insert into users values ($name, $i)";
mysql_query($sql);//------
}
$sql="select * from users";
$result=mysql_query($sql);
mysql_num_rows($result);
while($row=mysql_fetch_array($result)){
echo $row['name']."__".$row['age']."!!!<br/>";
}
mysql_close($conn);
echo "$sql"."hohoo";
?> 展开
2个回答
展开全部
$sql="insert into users values ($name, $i)";
补充一个: 你的insert语句有问题
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
补充一个: 你的insert语句有问题
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
追问
没有(列1,列2...)的话 默认按照表建立的顺序依次赋值的阿
追答
默认插入值的情况是因为你的数据表中相应字段设置有默认值
但是你这种状况 name 是不可能给默认值的 如果真这么设计 那你这问题拿出来就是撩人玩了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$sql="create table users(name varchar(50) not null, age int(3) not null)";
对于上面这一句,数据库不能这样创建呀。如果数据表本身存在,这是会出错的。
$sql="use haha";
mysql_query($sql);
对于上面的,既然mysql_select_db('haha'); 这里已经有了,就不要多此一举了。
可能还有一些错误,就不一一列举了。你学习编程,首先应该看网上的教程,或买书学习完整的教程,然后再一步一步的来摸索。
对于上面这一句,数据库不能这样创建呀。如果数据表本身存在,这是会出错的。
$sql="use haha";
mysql_query($sql);
对于上面的,既然mysql_select_db('haha'); 这里已经有了,就不要多此一举了。
可能还有一些错误,就不一一列举了。你学习编程,首先应该看网上的教程,或买书学习完整的教程,然后再一步一步的来摸索。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询