Я так растерялся. Я использовал следующий запрос, чтобы избавиться от нежелательных результатов в данных. Он работал нормально для всех полей, кроме «first_name». Вместо этого он изменил все поля first_name на «0». Нет разницы между заменой first_name и остальными, верно? Я не понимаю, что случилось!
UPDATE donors
SET
`first_name` = Replace(Replace(`first_name`, CHAR(13), ''), CHAR(10), '')
AND
`last_name` = Replace(Replace(`last_name`, CHAR(13), ''), CHAR(10), '')
AND
`address_1` = Replace(Replace(`address_1`, CHAR(13), ''), CHAR(10), '')
AND
`city` = Replace(Replace(`city`, CHAR(13), ''), CHAR(10), '')
AND
`zipcode` = Replace(Replace(`zipcode`, CHAR(13), ''), CHAR(10), '')
Я использую MYSQL, и это единственный запрос, который я использовал. Изменение произошло, когда я его выполнил. Я копирую и вставляю его сюда.
Вот DDL:
CREATE TABLE IF NOT EXISTS `donors` (
`donor_id` int(11) NOT NULL AUTO_INCREMENT,
`first_name` text NOT NULL,
`last_name` text NOT NULL,
`company` text NOT NULL,
`donor_notes` text NOT NULL,
`email_1` text NOT NULL,
`email_2` text NOT NULL,
`phone_1` text NOT NULL,
`phone_2` text NOT NULL,
`fax` text NOT NULL,
`address_1` text NOT NULL,
`address_2` text NOT NULL,
`city` text NOT NULL,
`state` varchar(50) NOT NULL,
`zipcode` varchar(11) NOT NULL,
`country` text NOT NULL,
`password` text NOT NULL,
`salt` text NOT NULL,
`newsletter` text NOT NULL,
`address_id` text NOT NULL,
`ip` text NOT NULL,
`status` text NOT NULL,
`approved` text NOT NULL,
`date_created` datetime NOT NULL,
PRIMARY KEY (`donor_id`)
) ENGINE=InnoDB AUTO_INCREMENT=445 DEFAULT CHARSET=latin1;