1. Использование AdoConnection и Adotable в Delphi
AdoConnection и Adotable настроены для подключения к базе данных (я использую SQLServer) в Delphi, который преподается во многих книгах, и в запуске нет проблем. Затем я изменил его, цель состоит в том, чтобы изменить базу данных соединения без изменения свойства ConnectionString AdoConnect в Delphi, а диалоговое окно подключения не отображается.
Шаги модификации: установите LoginPrompt в False, очистите свойство ConnectionString и добавьте код соединения
constrult: = 'Provider = SQLOLEDB.1; пароль = 1982072019; идентификатор пользователя = SA; начальный каталог = StorAgeManagement; источник данных = 10.16.99.175';
пытаться
loginform.tempadoconnection.connectionString: = constr;
loginform.tempadoconnection.connected: = true;
кроме
MOSSAGEDLG ('Подключение к базе данных неверно !! Пожалуйста, проверьте DataConfig.xml', MtConfirmation, [MBOK], 0);
Application.Terminate;
конец;
Таким образом, нет проблем с подключением к базе данных при запуске программы. Но проблема, которая возникает в том, что в Dlephi Adotable Control не может подключаться к таблицам, потому что свойство ConnectionString не имеет значения. Ошибка сообщается как «оператор по недействительной авторизации». Как использовать AdoConnection и Adotable Entrols в Delphi, и избежать диалогового окна «Надоедливое соединение».
2. Используйте операторы SQL в Delphi.
Поскольку оператор SQL требует двойных кавычек для назначения значений строкам, в то время как строки заключены в отдельные кавычки в Delphi, я столкнулся с некоторыми проблемами, используя их. Результатом моего эксперимента является то, что в Delphi используются две отдельные кавычки вместо двойных кавычек в операторе SQL. Не знаю, правильно ли это?
Я до сих пор не знаю, как его использовать.
3. Используйте AdoQuery в Delphi 7.0, чтобы вернуть результаты.
Я сообщил об ошибке после его использования, но есть программа CD, которая использует ее таким образом без ошибки. Я использую параметры ['xxxx'], и я не могу использовать.
4. Оригинальный код:
============================================================================= ================= ====================================================
Если Caninsert Then
Начинать
с alldatamodule.aq_othermaterielout do
Начинать
Закрывать;
Sql.clear;
SQL.Text: = 'Вставьте другие materielout (materielid, сумма) значения (: insertid ,: insertAmount,)';
Параметры [0] .value: = mymateriel;
Параметры [1] .value: = myamount;
ExecSQL;
конец;
с alldatamodule.aq_othermaterielstock do
Начинать
Закрывать;
Sql.clear;
SQL.Text: = 'Обновление другого набора MaterielStock Summ = Summation-: updateAmount, где materialId =: updateId';
Параметры [0] .value: = myamount;
Параметры [1] .value: = mymateriel;
ExecSQL;
конец;
materialoutform.close;
конец;
После этого кода
с alldatamodule.aq_othermaterielout do
Начинать
Закрывать;
Sql.clear;
SQL.Text: = 'Обновление другого набора MaterielStock Summ = Summation-: updateAmount, где materialId =: updateId';
Параметры [0] .value: = myamount;
Параметры [1] .value: = mymateriel;
ExecSQL;
конец;
Функция автоматического отображения списка управления, который можно использовать, не может использоваться с Alldatamodule, но я заставил код, стоящий за ним, все еще работал. Что происходит?