Отладьте плохую ошибку соглашения о вызовах DLL

Вы заявляете:

Добавление данных в базу данных MySql на удаленном сервере

blockquote>

Это означает, что у вас есть несколько клиентов, которые знают строку подключения к удаленной базе данных , Это охранное устройство! Хватит даже думать об этом! Кроме того, что произойдет, если строка подключения к базе данных изменится? Вам необходимо обновить каждый клиент. Единственное исключение будет, если вы находитесь в доверенной среде с доверенными соединениями, но я подозреваю, что это, так как вы используете MySQL.

К вашей реальной проблеме:

Ваша главная проблема в том, что для каждого элемента в вашем цикле вы создаете соединение, отправляете что-то на сервер и закрываете ваше соединение. И снова, и снова. Как правило, вы хотите отправить большую команду на сервер вместо нескольких созданных вашим циклом (SQL может обрабатывать несколько операторов вставки в одной команде SQL) .

Лучше (более безопасный способ) :

Создайте приложение для своего сервера, которое, например, принимает myList как JSON, и сохраните его там. Вероятно, вам нужно обработать авторизацию здесь.

Ваш Клиент отправляет Запрос на сохранение с myList в Приложение, о котором я упоминал выше.

У нас есть некоторые технологии для этого:


Предупреждение: Также, на первый взгляд, у вас, похоже, проблема с SQL-инъекциями. Посмотрите , что они , и , как вы можете предотвратить это .

16
задан Fionnuala 9 July 2014 в 19:21
поделиться

2 ответа

Вы проверили свои ссылки и декомпилировались?

"C:\Program Files\Microsoft Office\Office\MSACCESS.EXE" 
                                "d:\My Documents\access\mayapp.mdb" /decompile

См. также:
http://www.granite.ab.ca/access/decompile.htm
Декомпиляция VBScript


Проверьте ссылки в код

Dim ref As Reference
Dim sMsg As String

''Available since 2010
If BrokenReference Then
    For Each ref In References
        ''Available since at least 2000
        If ref.IsBroken Then
            sMsg = sMsg & "Ref Name: " & ref.Name
            'Also, if required
            'sMsg = sMsg & vbCrLf & "Built In: " & ref.BuiltIn
            'sMsg = sMsg & vbCrLf & "Full Path: " & ref.FullPath
            'sMsg = sMsg & vbCrLf & "GUID: " & ref.Guid
            'sMsg = sMsg & vbCrLf & "Kind: " & ref.Kind
            'sMsg = sMsg & vbCrLf & "Major (version number): " & ref.Major
            'sMsg = sMsg & vbCrLf & "Minor (version number): " & ref.Minor
            sMsg = sMsg & vbCrLf & "=================================" & vbCrLf
        End If
    Next
    MsgBox sMsg
End If
20
ответ дан 30 November 2019 в 15:44
поделиться

Я только что получил это в Excel и поинтересовался, получал ли кто-нибудь это раньше. Мое решение состояло в том, чтобы переместить ссылки на мою собственную DLL и нажать «Скомпилировать ».

0
ответ дан 30 November 2019 в 15:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: