Member 13341316 Ответов: 1

Пожалуйста любезно помогите мне с этой операцией необходимо использовать обновляемый запрос в VB.NET


привет, пожалуйста, помогите мне с этим, после того как я развернул свой проект с помощью installsheild, всякий раз, когда я пытался сохранить данные, он продолжал говорить 'операции должен использоваться обновляемый запрос

Что я уже пробовал:

я перепробовал все, что мог, пожалуйста, любезно помогите мне, чтобы я мог закончить проект вовремя

1 Ответов

Рейтинг:
2

OriginalGriff

Мы не можем вам помочь - у нас нет доступа к вашему коду!

На первый взгляд, это ваша строка подключения - вы обновили ее для новой сети, в которой развернуто программное обеспечение?

Так что начните с самого начала. Вероятно, вы не можете использовать отладчик - маловероятно, что на целевом компьютере будет установлен VS, - поэтому вам придется вернуться к более старым методам, а именно к журналированию.
Добавьте операторы ведения журнала в свой код, чтобы попытаться изолировать, какая часть вашего программного обеспечения генерирует ошибку. Когда вы знаете грубую область, вы можете начать добавлять более интенсивные лесозаготовки в этой области,чтобы еще больше сузить ее. В какой-то момент ведение журнала должно будет включать содержимое переменных, строковые значения, такие как строки подключения и use input, и так далее. Каждый раз, когда вы добавляете больше журналов, вам нужно будет переиздавать новое программное обеспечение на целевую машину.

Это должно направить вас в правильном направлении или, по крайней мере, дать вам информацию, которую вы можете передать нам.

Не забудьте удалить журнал, как только вы исправили проблему!


Member 13341316

Вход В Публичный Класс

Button6_Click частная суб(отправителя как объект, а равно EventArgs) обрабатывает Button6.Нажмите
Dim conn как новый OleDb. OleDbConnection
Дим connStr как String = "поставщика=Майкрософт.Туз.Oledb для.12.0;Источник Данных=|Параметр Datadirectory|\Buthdatabase.# то#; сохранять сведения о безопасности=false в"
Dim cmd как новый OleDb. OleDbCommand

Попробуй
Коннектикут.ConnectionString = connStr
Коннектикут.Открыть()
УМК.Соединение = conn

УМК.CommandText = "INSERT INTO Admission ([Hospital No], [имя пациента], [дата посещения], [Reffered By], [консультант], [палата], [дата выписки], [выписан], [состояние при выписке], [резюме выписки])" & _
"Ценности ([@HospitalNo],[@Patient'sName],[@DateAttended],[@RefferedBy],[@Consultant],[@Ward],[@DateDischarged],[@DischargedTo],[@ConditionOnDischarge],[@DischargeSummary]); "

УМК.Параметры.AddWithValue ("@HospitalNo", Hospital_NoTextBox. Text)
УМК.Параметры.AddWithValue ("@Patient'sname", Patient_s_NameTextBox. Text)
УМК.Параметры.AddWithValue ("@DateAttended", DateTime. Text)
УМК.Параметры.AddWithValue ("@RefferedBy", Reffered_ByTextBox. Text)
УМК.Параметры.AddWithValue ("@Consultant", ConsultantTextBox. Text)
УМК.Параметры.AddWithValue ("@Ward", WardTextBox. Text)
УМК.Параметры.AddWithValue ("@DateDischarged", DateTime1. Text)
УМК.Параметры.AddWithValue ("@DischargedTo", Discharged_ToTextBox. Text)
УМК.Параметры.AddWithValue ("@ConditionOnDischarge", Condition_On_DischargeTextBox. Text)
УМК.Параметры.AddWithValue ("@DischargeSummary", Discharge_SummaryTextBox. Text)


УМК.Метод executenonquery()
Коннектикут.Закрывать()
Поймать ex как исключение
Ящик для сообщений.Показать (например, сообщение)
Конец Попытки
Конец Подводной Лодки

OriginalGriff

И какие результаты вы получаете?
Что показывает вам протоколирование?

Member 13341316

Операция должна использовать обновляемый запрос, вот что она показывает

OriginalGriff

:вздыхать:
Нет, это то, что показывает ваше сообщение. Он не говорит нам, какая строка генерирует ошибку или какое-либо содержимое переменной.

Я не могу запустить ваш код: у меня нет ваших данных, у меня нет ваших пользовательских данных. Тебе придется делать здесь ослиную работу!

Кстати, какого черта вы передаете даты в виде строк? Вы ведь не храните их в виде строк, не так ли? Это было бы глупо...

Richard Deeming

Наиболее распространенной причиной этой ошибки является то, что у пользователя нет разрешения на запись в папку, в которой хранится база данных.

Я вижу, вы храните файл базы данных в каталоге приложений. Вы установили приложение в привилегированном месте, например C:\Program Files\Your Application\ например?

Вам нужно будет установить файл базы данных в папку, в которую пользователь может писать - обычно что-то под профилем пользователя, в папке "данные приложения" или в папке "данные программы" системного уровня.

В качестве альтернативы можно отказаться от доступа и перейти на соответствующую многопользовательскую СУБД - например,: SQL Server Express[^] или PostgreSQL[^Но это гораздо более сложный вариант.

Member 13341316

есть ли у них способ, которым я могу отправить вам свой проект

OriginalGriff

Нет! :смеяться:
Это часть вашей задачи, и это будет не последний раз, когда вы должны сделать это. Так что прикусите язык и начните учиться отлаживать небольшой проект - это будет только сложнее, когда вы доберетесь до" реальных " вещей.

Member 13341316

https://drive.google.com/open?id=0B3TbJAnEMncGTllQbkJuWXl2bnc

Member 13341316

пожалуйста, любезно помогите мне, это ссылка на проект. пожалуйста, скачайте его и помогите мне

OriginalGriff

Нет. Я понятия не имею, что делает ваш код, и я не запускаю неизвестный код на своей машине dev! А вы бы хотели?

Поэтому начните регистрировать происходящее и выяснять информацию. Это всего лишь небольшой метод: вам не потребуется больше нескольких минут, чтобы добавить все это, если вы зарегистрировали каждую строку!

Member 13341316

ладно