С одинарными кавычками тоже пробовал. В текстовом поле текст появляется ограниченный одинарными кавычками - та же беда.
Нашел более эффективное решение. Для начала я создал локальную базу данных MySQL и сконвертил таблицу Access туда. С помощью менеджера баз данных HeidiSQL подключился к локальной базе и сохранил таблицу в скрипт-файл .sql
Файл .sql открывается обычным блокнотом, там оказались стандартные команды в стиле
HeidiSQL позволяет выполнять .sql скрипт для подключенной базы данных. Если подключиться к MySQL на удаленном сервере, то в отличие от ADODB, который выполняет последовательное обновление записей минут 30, через скрипт база обновляется за секунды.
Написать макрос, создающий подобный файл .sql по подсмотренному шаблону - это уже дело техники.
Апострофы внутрь текста можно заносить в виде комбинаций \' или \" - синтаксис mysql
Были кое-какие сложности с форматом файла. FSO создает файлы в формате UTF-16, а база данных работает с UTF-8, из-за этого скрипт не распознавался. В гугле нашел примеры, в которых с помощью ADODB.Stream файлы можно конвертировать из одной кодировки в другую.
Осталось разобраться как запустить .sql файл без сторонних приложений.
Нашел более эффективное решение. Для начала я создал локальную базу данных MySQL и сконвертил таблицу Access туда. С помощью менеджера баз данных HeidiSQL подключился к локальной базе и сохранил таблицу в скрипт-файл .sql
Файл .sql открывается обычным блокнотом, там оказались стандартные команды в стиле
Код (sql) Выделить
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!50503 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
DELETE FROM AutocatPrice;
/*!40000 ALTER TABLE `AutocatPrice` DISABLE KEYS */;
INSERT INTO AutocatPrice (`ID`, `Payment`, `Analyse_Date`, `Brand`, `Model`, `Engine_Type`, `Engine_Size`, `Engine_Name`, `Year_First`, `Year_Last`, `Serial`, `Mass`, `Cat_Type`, `Pt`, `Pd`, `Rh`, `PricePerKg`, `Total_Price`, `Company`, `URL`, `Method`, `Notes`) VALUES
(1, 0, '2018-09-05', 53, NULL, NULL, NULL, NULL, NULL, NULL, 'KBA17001 / RFK-TT-20 / A', '0.70', 4, NULL, NULL, NULL, '67', '47', 1, NULL, 5, NULL),
(2, 0, '2018-10-03', 53, NULL, NULL, NULL, NULL, NULL, NULL, 'KBA17012', '1.50', 4, NULL, NULL, NULL, '67', '100', 1, NULL, 5, NULL)
HeidiSQL позволяет выполнять .sql скрипт для подключенной базы данных. Если подключиться к MySQL на удаленном сервере, то в отличие от ADODB, который выполняет последовательное обновление записей минут 30, через скрипт база обновляется за секунды.
Написать макрос, создающий подобный файл .sql по подсмотренному шаблону - это уже дело техники.
Апострофы внутрь текста можно заносить в виде комбинаций \' или \" - синтаксис mysql
Были кое-какие сложности с форматом файла. FSO создает файлы в формате UTF-16, а база данных работает с UTF-8, из-за этого скрипт не распознавался. В гугле нашел примеры, в которых с помощью ADODB.Stream файлы можно конвертировать из одной кодировки в другую.
Осталось разобраться как запустить .sql файл без сторонних приложений.
