Обсуждение статьи "Работа с СУБД MySQL из MQL5 (MQL4)" - страница 10
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте, похоже, что MySQL запрещает соединение для пользователя ODBC на localhost.
Вы можете попробовать проверить StackOverflow: http://stackoverflow.com/questions/23950722/how-to-overcome-error-1045-28000-access-denied-for-user- odbclocalhost-u ;
Здравствуйте Евгений Луговой.
Я использовал MQLMySQL для реализации общего запроса, вставки, обновления, удаления операций, но есть проблема, не могу вставить китайский язык, запрос из китайского тоже мусолится, я хотел бы спросить, вы процесс упаковки промежуточного ПО установили кодировку? Я хочу спросить, вы процесс упаковки промежуточного программного обеспечения установил код? Явление выглядит следующим образом:
DROP TABLE IF EXISTS `tb_test_pat`;
CREATE TABLE `tb_test_pat` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `symbol` varchitecture
`symbol` varchar(255) NOT NULL, `start_time` datetime, `tb_test_pat`; CREATE TABLE
`start_time` datetime NOT NULL,
`end_time` datetime NOT NULL, `trend` int(255)
`trend` int(10) NOT NULL, `points` int(10)
`points` int(10) unsigned zerofill NOT NULL, `comments` text CHARacteristic
`comments` text CHARACTER SET utf8,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Не удалось вставить китайский язык
Ошибка: запрос был пустым Запрос: INSERT INTO tb_test_pat (trend, symbol, start_time, end_time, points, comments) VALUES (1, 'EURUSD ','2014.12.16 13:00 ','2014.12.17 20:00',8,'Test 12')
Английская вставка прошла успешно
Succeeded: INSERT INTO tb_test_pat (trend, symbol, start_time, end_time, points, comments) VALUES (1,'EURUSD','2014.12.16 13:00','2014.12.17 20 :00',8,'abc')
Для чего это нужно?
Здравствуйте Евгений Луговой.
Я использовал MQLMySQL для реализации общего запроса, вставки, обновления, удаления операций, но есть проблема, не могу вставить китайский язык, запрос из китайского тоже мусолится, я хотел бы спросить, вы процесс упаковки промежуточного ПО установили кодировку? Я хочу спросить, вы процесс упаковки промежуточного программного обеспечения установил код? Явление выглядит следующим образом:
DROP TABLE IF EXISTS `tb_test_pat`;
CREATE TABLE `tb_test_pat` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `symbol` varchitecture
`symbol` varchar(255) NOT NULL, `start_time` datetime, `tb_test_pat`; CREATE TABLE
`start_time` datetime NOT NULL,
`end_time` datetime NOT NULL, `trend` int(255)
`trend` int(10) NOT NULL, `points` int(10)
`points` int(10) unsigned zerofill NOT NULL, `comments` text CHARacteristic
`comments` text CHARACTER SET utf8,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Не удалось вставить китайский язык
Ошибка: запрос был пустым Запрос: INSERT INTO tb_test_pat (trend, symbol, start_time, end_time, points, comments) VALUES (1,'EURUSD','2014.12.16 13:00 ','2014.12.17 20:00',8,'Test 12')
Английская вставка прошла успешно
Succeeded: INSERT INTO tb_test_pat (trend, symbol, start_time, end_time, points, comments) VALUES (1,'EURUSD','2014.12.16 13:00','2014.12.17 20 :00',8,'abc')
Для чего это нужно?
Вы можете попробовать выполнить следующую команду после подключения MySQL.
SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'
Возможно, какой-то из этих параметров не установлен в UTF.
Еще одно решение - выполнять следующие команды по очереди после подключения.
SET NAMES 'utf8'
SET CHARACTER SET 'utf8'
SET SESSION collation_connection = 'utf8_general_ci'
Еще одно решение - выполнять следующие команды по очереди после подключения.
SET NAMES 'utf8'
SET CHARACTER SET 'utf8'
SET SESSION collation_connection = 'utf8_general_ci'
Это все еще не работает, но я нашел проблему
bool __stdcall MySqlExecute( int pConnection, wchar_t* pQuery)
{
...
char Query[16384];
sprintf_s(Query, wcslen(pQuery)+10, "%S", pQuery); // При выполнении до этой строки встречается китайский язык, и Query становится пустой строкой, что приводит к сообщению об ошибке: Error: Query was empty query: UPDATE tb_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat SET comments_test_pat test_pat SET comments='Chinese'
Можете ли вы помочь решить эту проблему? Спасибо большое! У меня 64 бит
Он все еще не работает, но я нашел проблему
bool __stdcall MySqlExecute( int pConnection, wchar_t* pQuery)
{
...
char Query[16384];
sprintf_s(Query, wcslen(pQuery)+10, "%S", pQuery); // При выполнении до этой строки встретился китайский язык, и Query стал пустой строкой, что привело к сообщению об ошибке: Error: Query was empty query: UPDATE tb_test_pat SET comments='Chinese'. test_pat SET comments='Chinese'
Можете ли вы помочь решить эту проблему? Спасибо большое! У меня 64 бит
Также в этом случае нельзя использовать UTF-8, а только UTF-16!