Ir para o conteúdo

RichTextbox (Base dados)

Introdução

Em continuação dos artigos Richtextbox I, Richtextbox II, demonstro, como prometido e por fim, a utilização da Richtextbox na base de dados!

Nota: A base de dados utilizada, como irás poder comprovar, será SQLite.

Porquê SQLite

O SQLite não passa de uma biblioteca open source que têm por sistema mãe o SQL já embutido. A simplicidade é o seu ponto forte, não esquecendo, de todo, a segurança e o seu home-work!

Mais informações podem ser aqui encontradas.

Exemplos em prática

Nos exemplos abaixo, serão apenas utilizados dois tipos de queries: UPDATE e SELECT. Para mais detalhes de como proceder com as mesmas, vê este artigo.

Importante: Tanto a inserção como selecção de dados devem identificar a função rtf (Rich Text Format) da RichTextbox. Esta função codifica/descodifica todo o texto, gráfico ou não, incutido por nós no controlo.

UPDATE

Dim SqlConnection As New SQLiteConnection("Data Source=" & Application.StartupPath & "BD.db3" & "; Version=3;")
Dim query As String = "UPDATE Clientes SET [Curriculum] = @Curriculum WHERE ID = 2"

Dim command As New SQLiteCommand(query, SqlConnection)
' Aqui é que entra a função rtf. 
' É muito importante não esquecer, pois caso contrário não irá funcionar!
command.Parameters.Add("@Curriculum", OleDbType.VarChar).Value = RichTextBox1.Rtf

SqlConnection.Open()

Dim x As Integer = command.ExecuteNonQuery()
If x < 1 Then
     MessageBox.Show("Erro ao actualizar", My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Error)
Else
     MessageBox.Show("Actualizado com sucesso!", My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Information)
End If

SqlConnection.Close()
command = Nothing

SELECT

Dim SqlConnection As New SQLiteConnection("Data Source=" & Application.StartupPath & "BD.db3" & "; Version=3;")
Dim query As String = "SELECT Curriculum FROM Clientes WHERE ID = 2"

Dim command As New SQLiteCommand(query, SqlConnection)
Dim reader As SQLiteDataReader = command.ExecuteReader() ' Lemos o conteúdo

RichTextbox1.Rtf = reader.Item("Curriculum").ToString() ' Atribuimos o mesmo ao controlo

reader.Close()

Conclusão

Podemos definir uma estrutura idêntica ao bloco de notas / notepad ou podemos criar uma aplicação que melhora a qualidade de recursos disponibilizada ao utilizador.

Exemplo de RichTextBox de resultado