mysql - 在数据库中插入或替换值

标签 mysql database insert replace

如何在数据库中插入或替换值?

基本上,我需要替换数据库中的一行而不更改其余信息,在本例中是基于 ID 的 form_email 行。

在之前的实例中,我收到了一封电子邮件:

$query = "SELECT `form_email` FROM `$table_name_email` WHERE `id` = $form_id";
$result = mysql_query($query) or die(mysql_error());

while($row_email = mysql_fetch_array($result_email)){
    $email = $row_email[form_email];
    echo $email;
}

但我无法理解如何插入或替换该电子邮件

这是表结构,以防万一。

CREATE TABLE IF NOT EXISTS `contactforms` (
  `id` int(11) NOT NULL auto_increment,
  `form_slug` varchar(100) NOT NULL,
  `form_title` varchar(200) NOT NULL,
  `form_action` mediumtext NOT NULL,
  `form_method` varchar(4) NOT NULL,
  `form_fields` text NOT NULL,
  `submit_button_text` varchar(200) NOT NULL,
  `custom_code` mediumtext NOT NULL,
  `form_style` int(10) NOT NULL default '0',
  `form_email` text NOT NULL,
  `form_success_message` mediumtext NOT NULL,
  `form_thank_you_page` varchar(200) NOT NULL,
  `form_success_title` varchar(150) NOT NULL default 'Form Success!',
  `form_access` text NOT NULL,
  `form_email_subject` varchar(250) NOT NULL,
  `form_email_name` varchar(100) NOT NULL,
  `form_pages` varchar(400) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=17 ;

提前致谢

最佳答案

您可以使用sql UPDATE 语句。 它允许您更新某些记录的某些字段,例如(伪代码):

UPDATE contactforms
SET form_email = 'something@narly.com'
WHERE id = 'someId'

这会将 ID 为 someId 的行的所有 form_email 字段修改为 something@narly.com :)

关于mysql - 在数据库中插入或替换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11189796/

相关文章:

php - mySQL带参数查询下一个id

mysql - 如何增加 MySQL 中列值的出现次数

php - 选择带日期的数据库数据

python - 如何在 Google AppEngine 上实现 "autoincrement"

Python SQLite 插入语句执行但不插入任何数据

.net - 需要帮助来调试使用 .Net 和 MySQL 的应用程序

MySql 语法错误

iphone - 更好的方法 - 为 iPad 应用程序使用数据库或网络服务

database - 如何在集群环境中管理 cfc 的状态

mysql - 将多行插入到 column1 中具有相同外键且 column2 具有不同值的表中