2012-03-04 58 views
0

让我们说,我们已经数据库表my_table结构如下更新数据库行

CREATE TABLE `my_table` (
`title` text, 
`name` text 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
INSERT INTO `admin` VALUES ('my title', 'my name'); 

现在我想将其更新到与1个额外字段slogan是这样

CREATE TABLE `my_table` (
`title` text, 
`name` text, 
`slogan` text 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
INSERT INTO `admin` VALUES ('my title', 'my name', 'my slogan'); 

当然,如果它10甚至100我可以使用任何文本编辑器使用正则表达式,但我太大了,我的处理器做到这一点,所以我一直在考虑使用PHP更新我的表,而它在我的托管服务器上。

我一直在想用

$q1 = "CREATE TABLE `my_table`(
`slogan` text)"; 
mysql_query($q1) or die(mysql_error()." at row ".__LINE__); 

,但给我的错误my_table已经存在 所以任何帮助〜谢谢

+0

说实话,我不完全得到的问题 – 2012-03-04 21:41:55

回答

1

你需要的是

ALTER TABLE `my_table` ADD COLUMN `slogan` text; 

其次是大量的

UPDATE `my_table` SET `slogan`='...' WHERE `title`=' ... '; 
2

试一下:

ALTER TABLE my_table ADD slogan text; 
1

您正在使用CREATE TABLE这是创建新表,但你说你已经创建的表,只是要添加新列的口号。所以你需要使用ALTER Table语法。

所以使用alter查询在其他职位描述:

ALTER TABLE `my_table` ADD COLUMN `slogan` text