Visual Basic.net - Сохранение пути к изображению в базе данных Access
вопрос
Мне нужна программа для сохранения пути изображения в моей базе данных Access. Как этого достичь?
Решение
Это приложение имеет кнопку открытия, которая поможет вам открыть любой файл изображения в PictureBox на форме с помощью OpenFileDialog. Вы увидите путь к файлу изображения в отключенном TextBox. Когда вы нажимаете кнопку обновления, путь к изображению сохраняется в базе данных Access.
Выполните следующие шаги, чтобы создать подобный проект для себя:
- Создайте новый проект Visual Basic.net. Выберите приложение Windows Forms из диалогового окна «Новый проект». Назовите это приложение как mikeoe2003PictureApplication.
- Создайте следующее с нижеуказанными свойствами:
- Форма - (Имя): mikeoe2003PictureApplication, Текст: FormPictureApplication
- PictureBox - (Имя): PictureBox1, SizeMode: StretchImage
- Кнопка - (Имя): ButtonUpdate, Text: & Update
- Кнопка - (Имя): ButtonOpen, Текст: & Открыть
- TextBoxt - (Имя): TextBoxPictureFilePath, включено: False
- Дважды щелкните форму, вставьте следующий код прямо над открытым классом mikeoe2003PictureApplication:
Импортирует System.Data.OleDb. Импортирует System.IO. Импортирует Microsoft.Win32. Дважды щелкните ButtonOpen и вставьте следующий код: Dim img As String Dim myStream As Stream = ничего .Filter = Ничего openFileDialog1.FilterIndex = 2 openFileDialog1.RestoreDirectory = True openFileDialog1.FileName = "" Если openFileDialog1.ShowDialog () = System.Windows.Forms.DialogResult.OK, то попробуйте myStream = openFileDialog1.On if (NF). ) Тогда TextBoxPictureFilePath.Text = "" img = openFileDialog1.FileName PictureBox1.Image = System.Drawing.Bitmap.FromFile (img) TextBoxPictureFilePath. Исходная ошибка: "& Ex.Message) Наконец, если (myStream IsNot Nothing), тогда myStream.Close () End If End End Try If
- Создайте базу данных Microsoft Access в удобном для вас месте и назовите ее Databasemikeoe2003PictureApplication.mdb
- Создайте таблицу с именем Tablemikeoe2003PictureApplication и добавьте в нее следующие столбцы:
Id - Datatype: Autonumber PicturePath - DataType: Memo (поскольку пути к файлам могут быть значительно длиннее)
- Дважды нажмите кнопку «Обновить» и вставьте следующий код:
Пытаться
Dim myConnection As OleDbConnection Dim myCommand As OleDbCommand Dim mySQLString As String myConnection = New OleDbConnection ("Провайдер = Microsoft.Jet.OLEDB.4.0; Источник данных = База данныхmikeoe2003PictureApplication.mdb;") myConnection.St3PlayPlayer MySQLOpp (myPinePlay) myConnection.OpenPlaying MySQLConnect (INP) MySQLOpp () ) VALUES ('"& Replace $ (TextBoxPictureFilePath.Text, "' ", " '' ") &" ') "myCommand = New OleDbCommand (mySQLString, myConnection) myCommand.ExecuteNonQuery () PictureBox1.Image = Nothing TextBoxPictureFilePile "" Catch ex As Exception MessageBox.Show (ex.Message & "-" & ex.Source) End Try
- Запустите приложение, оно должно работать как нужно.
Спасибо Zohaib R за этот совет на форуме.