插入数据MySQL

时间:2012-03-01 20:27:32

标签: php mysql

我是MySQL的初学者,我正在尝试在我的数据库中输入一些值。该数据库已经制作完成并且基于localy。

我有一个名为'test'的Schema,在模式中我有一个名为'contacts'的表。在联系人中,我有一个id,名字和姓氏。

所以我试图在联系人中输入一些数据。这是我的php文件:

<?
$db_host        = 'localhost';
$db_user        = 'root';
$db_pass        = '*******'; // root pass
$db_database    = 'contacts'; 

$link = @mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_database,$link);

$query = "INSERT INTO contacts VALUES ('','John','Smith')";

mysql_query($query);
mysql_close();
?>

当我在浏览器上运行文件时,我的数据库没有获取任何值。 如何执行该文件以便将John Smith添加到我的数据库中?

5 个答案:

答案 0 :(得分:4)

您的php文件必须以<?php开头,而不是<?

试试这个:

<?php
$db_host        = 'localhost'; 
$db_user        = 'root'; 
$db_pass        = '*******'; // root pass 
$db_database    = 'contacts';  

$link = @mysql_connect($db_host,$db_user,$db_pass); 
mysql_select_db($db_database,$link); 

$query = "INSERT INTO contacts VALUES ('','John','Smith')"; 

mysql_query($query); 
mysql_close(); 
?> 

答案 1 :(得分:1)

更改

mysql_query($query);

mysql_query($query) or trigger_error(mysql_error() . $query);

然后所有人都会被揭露。

答案 2 :(得分:0)

首先你桌子的结构如何?如果表上只有2个字段,则表示错误,请尝试发布控制台返回给您的错误。

$query = "INSERT INTO contacts (first,last) VALUES ('John', 'Smith')";
$e=mysql_fetch_assoc($query);

也不要忘记你的表结构对字段id说不为null,默认值为null,所以它不会接受这种插入

答案 3 :(得分:0)

如果您知道字段名称,可以考虑尝试使用PHP ADODB并将AutoExecute与INSERT一起使用

$ DB-&GT;自动成交( '表名',阵列( 'field1的'=&GT; '值', 'FIELD2'=&GT; '值'));

也可用于更新:)

http://adodb.sourceforge.net/

答案 4 :(得分:-1)

您的ID可能是auto_increment,如果是,请在查询中添加属性顺序:

INSERT INTO contacts(`first_name`, `last_name`) VALUES ('John','Smith')

first_namelast_name替换为您的真实列名。