В последнее время задался вопросом: “А можно ли смотреть на iphone видео с домашнего компьютера?”. Оказывается, это возможно и даже бесплатно. В этой статье я расскажу как это сделать.
Category Archives: tips
Использование screen в Linux
Что такое screen?
screen – это консольный оконный менеджер с поддержкой вкладок (или окон). Он имеет замечательную возможность продолжать работу с того места, где остановились в прошлый раз. В этой статье я расскажу как быстро приступить к работе.
Mysql: проблема букв "И" и "ш"
После неудачной конвертации из одной кодировки в другую, может случится ситуация, при которой вместо заглавной буквы “И” и строчной “ш” отображаются знаки “�?”, при этом остальные символы отображаются правильно. Например “Андру�?ко �?рина”.
По-умолчанию phpmyadmin коннектится к БД, используя UTF-8. В полях с кириллицей можно увидеть кракозябры, похожие на “РђРЅРґСЂСѓС?РєРѕ Р?СЂРёРЅР°”.
Проверить наличие знаков “�?” в тексте можно с помощью запроса:
1 2 3 4 |
SELECT
convert(name USING BINARY)
FROM
`MyTable`; |
Как исправить?
- создаем таблицу аналогичную по структуре той, которая хранится в неправильной кодировке.
- получаем структуру исходной таблицы:
1 |
SHOW CREATE TABLE `MyTable`; |
- задаем другое имя, напр. `New_MyTable`; прописываем UTF-8 кодировку;
- в стобцах исходной таблицы содержащих кириллицу делаем замену:
1 2 3 4 5 6 7 8 9 10 |
UPDATE `New_MyTable`
SET `my_column` = REPLACE (`my_column`,
CONCAT(CHAR(209), CHAR(63)),
CONCAT(CHAR(209), CHAR(136))
);
UPDATE `New_MyTable`
SET `my_column` = REPLACE (`my_column`,
CONCAT(CHAR(208), CHAR(63)),
CONCAT(CHAR(208), CHAR(152))
); |
- вставляем в таблицу `New_MyTable` данные, перекодируя на ходу нужные столбцы:
1 2 3 4 5 6 7 8 |
INSERT INTO
`New_MyTable`(id, my_column, third_column)
SELECT
id,
convert(my_column using binary),
third_column
FROM
`MyTable`; |
- Таблица `New_MyTable` готова к использованию.
Источник: Античат.ру
Вставка новых данных, обновление существующих
Есть замечательная конструкция в MySQL, которая позволяет при вставке существующих первичных ключей, обновлять эту строку, иначе вставляется новая запись.
1 2 3 4 5 6 7 8 |
INSERT INTO
table_name(id, name, pass)
VALUES
('111', 'myname', 'mypass')
ON DUPLICATE KEY
UPDATE
name = VALUES(name),
pass = VALUES(pass) |
Если в таблице table_name существует первичный ключ id, то обновятся name и pass, в другом случае произойдет вставка новой записи.