Imports ADODB Public Class Form1 Dim cnx As ADODB.Connection = New ADODB.Connection Dim chainedeconnection As String = "provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & "C:\Users\medas\Documents\Mangas.mdb" Dim sql As String Dim SqlChap As String Dim SqlTome As String Dim SqlTome1 As String Dim SqlAuteur As String Dim SqlAuteur1 As String Dim SqlChapTome As String Dim SqlChapTomeAut As String Dim SqlAutTome As String Dim SqlAutTome1 As String Dim SqlAutChap As String Dim SqlInsChap As String Dim SqlInsTome As String Dim SqlInsAut As String Dim rs As ADODB.Recordset = New ADODB.Recordset Dim RsChap As ADODB.Recordset = New ADODB.Recordset Dim RsTome As ADODB.Recordset = New ADODB.Recordset Dim RsTome1 As ADODB.Recordset = New ADODB.Recordset Dim RsAuteur As ADODB.Recordset = New ADODB.Recordset Dim RsAuteur1 As ADODB.Recordset = New ADODB.Recordset Dim RsChapTome As ADODB.Recordset = New ADODB.Recordset Dim RsChapTomeAut As ADODB.Recordset = New ADODB.Recordset Dim RsAutTome As ADODB.Recordset = New ADODB.Recordset Dim RsAutTome1 As ADODB.Recordset = New ADODB.Recordset Dim RsAutChap As ADODB.Recordset = New ADODB.Recordset Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load T_user.Visible = False L_identifiant.Visible = False B_ajouter.Visible = False B_Supprimer.Visible = False C_Auteur.Visible = False C_Chapitre.Visible = False C_Tome.Visible = False cnx.ConnectionString = chainedeconnection cnx.Open() sql = "select * from Chapitre" 'rs.Open(sql, cnx, CursorTypeEnum.adOpenStatic) rs = cnx.Execute(sql) 'lstchap.Items.Clear() 'While Not RsChap.EOF ' lstchap.Items.Add(RsChap.Fields("NomChap").Value) ' RsChap.MoveNext() 'End While End Sub Private Sub cmb_recherche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_recherche.Click Dim valeur As Integer lstchap.Items.Clear() lst_Tomes.Items.Clear() If Txt_Auteur.Text "" And Txt_Nomchap.Text "" And Txt_Tome.Text = "" Then MsgBox("veuillez saisir un des champs") valeur = 0 End If If Txt_Nomchap.Text <> "" Then valeur = 1 End If If Txt_Tome.Text <> "" Then valeur = 2 End If If Txt_Auteur.Text <> "" Then valeur = 4 End If If Txt_Nomchap.Text <> "" And Txt_Tome.Text <> "" Then valeur = 3 End If If Txt_Auteur.Text <> "" And Txt_Tome.Text <> "" Then valeur = 6 End If If Txt_Auteur.Text <> "" And Txt_Nomchap.Text <> "" Then valeur = 5 End If If Txt_Auteur.Text <> "" And Txt_Nomchap.Text <> "" And Txt_Tome.Text <> "" Then valeur = 7 End If Select Case valeur 'recherche du chapitre dans la base de donnée et affiche le non du manga Case 1 SqlChap = "SELECT Mangas.NomMangas, count(*)as nb FROM Mangas, Chapitre" SqlChap SqlChap & " WHERE Chapitre.CodeMangas Mangas.CodeMangas " SqlChap SqlChap & " AND NomChap'" & Txt_Nomchap.Text & "'" SqlChap = SqlChap & " GROUP BY Mangas.NomMangas " SqlChap = SqlChap & "having count (*) ;" 'RsChap.Open(SqlChap, cnx, CursorTypeEnum.adOpenStatic, CursorTypeEnum.adOpenDynamic) RsChap = cnx.Execute(SqlChap) L_titreManga.Text = RsChap.Fields("NomMangas").Value If RsChap("nb").Value = 1 Then affichagevb.Show() Else MsgBox("vous avez mal saisi une donnée") End If 'MsgBox(valeur) 'recherche le nom du tome dans la base de donnée e affiche les chpitre en question Case 2 SqlTome = " SELECT Mangas.NomMangas, Tome.NomTome, Chapitre.NomChap" SqlTome SqlTome & " FROM (Mangas INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas) " SqlTome SqlTome & " INNER JOIN Tome ON (Tome.CodeTome Chapitre.CodeTome) " SqlTome SqlTome & " AND (Mangas.CodeMangas Tome.CodeMangas)" SqlTome = SqlTome & " WHERE Tome.NomTome='" & Txt_Tome.Text & "'" SqlTome = SqlTome & " GROUP BY Mangas.NomMangas, Tome.NomTome, Chapitre.NomChap ;" ' requête pour connaître le nombre de chapitre SqlTome1 = " SELECT count(*)as nb" SqlTome1 SqlTome1 & " FROM (Mangas INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas) " SqlTome1 SqlTome1 & " INNER JOIN Tome ON (Tome.CodeTome Chapitre.CodeTome) " SqlTome1 SqlTome1 & " AND (Mangas.CodeMangas Tome.CodeMangas)" SqlTome1 = SqlTome1 & " WHERE Tome.NomTome='" & Txt_Tome.Text & "';" RsTome = cnx.Execute(SqlTome) RsTome1 = cnx.Execute(SqlTome1) 'MsgBox(RsTome1.Fields("nb").Value) lstchap.Items.Clear() While Not RsTome.EOF lstchap.Items.Add(RsTome.Fields("Nomchap").Value) L_titreManga.Text = RsTome.Fields("NomMangas").Value RsTome.MoveNext() End While txt_nbchap.Text = RsTome1.Fields("nb").Value Case 3 'recherche le nom du chapitre et le tome et affiche les image en question et affiche le nom du manga SqlChapTome = " SELECT Mangas.NomMangas, count(*) as nb" SqlChapTome SqlChapTome & " FROM (Mangas INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas) INNER JOIN Tome ON (Tome.CodeTome = Chapitre.CodeTome) " SqlChapTome SqlChapTome & " AND (Mangas.CodeMangas Tome.CodeMangas)" SqlChapTome = SqlChapTome & " WHERE (((Chapitre.NomChap)='" & Txt_Nomchap.Text & "')" SqlChapTome = SqlChapTome & " AND ((Tome.NomTome)='" & Txt_Tome.Text & "'))" SqlChapTome = SqlChapTome & " group by Mangas.NomMangas;" 'RsChapTome.Open(SqlChapTome, cnx, CursorTypeEnum.adOpenStatic) RsChapTome = cnx.Execute(SqlChapTome) L_titreManga.Text = RsChapTome.Fields("NomMangas").Value If RsChapTome("nb").Value = 1 Then affichagevb.Show() Else MsgBox("vous avez mal saisi une donnée") End If 'MsgBox(valeur) Case 4 'recherche le nom de l'auteur dans la basse de donné et affiche tous les mangas en question SqlAuteur = " SELECT Mangas.NomMangas, Tome.NomTome" SqlAuteur SqlAuteur & " FROM (Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlAuteur SqlAuteur & " INNER JOIN Tome ON Mangas.CodeMangas Tome.CodeMangas" SqlAuteur = SqlAuteur & " WHERE (((Auteur.NomAuteur)='" & Txt_Auteur.Text & "' ));" SqlAuteur1 = " SELECT count(*) as nbTome" SqlAuteur1 SqlAuteur1 & " FROM (Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlAuteur1 SqlAuteur1 & " INNER JOIN Tome ON Mangas.CodeMangas Tome.CodeMangas" SqlAuteur1 = SqlAuteur1 & " WHERE (((Auteur.NomAuteur)='" & Txt_Auteur.Text & "' ))" 'RsAuteur.Open(SqlAuteur, cnx, CursorTypeEnum.adOpenStatic) RsAuteur = cnx.Execute(SqlAuteur) RsAuteur1 = cnx.Execute(SqlAuteur1) txt_nbtomes.Text = RsAuteur1.Fields("nbTome").Value If RsAuteur1.Fields("nbTome").Value > 1 Then lst_Tomes.Items.Clear() While Not RsAuteur.EOF lst_Tomes.Items.Add(RsAuteur.Fields("nomTome").Value) L_titreManga.Text = RsAuteur.Fields("NomMangas").Value RsAuteur.MoveNext() End While Else MsgBox("vous avez mal saisi une donnée") End If 'MsgBox(valeur) Case 5 'recherche le chapitre et l'auteur dans la basse de donnée et affiche les images en question SqlAutChap = " SELECT Mangas.NomMangas, count(*)as nb" SqlAutChap SqlAutChap & " FROM (Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlAutChap SqlAutChap & " INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas" SqlAutChap = SqlAutChap & " WHERE (((Auteur.NomAuteur)='" & Txt_Auteur.Text & " ')" SqlAutChap = SqlAutChap & " AND ((Chapitre.NomChap)='" & Txt_Nomchap.Text & "'))" SqlAutChap = SqlAutChap & " GROUP BY Mangas.NomMangas ;" 'RsAutChap.Open(SqlAutChap, cnx, CursorTypeEnum.adOpenStatic) RsAutChap = cnx.Execute(SqlAutChap) L_titreManga.Text = RsAutChap.Fields("NomMangas").Value If RsAutChap("nb").Value = 1 Then affichagevb.Show() Else MsgBox("vous avez mal saisi une donnée") End If 'MsgBox(valeur) Case 6 'recherche l'auteur et le tome en question affiche dans la liste tous les chapitres en question SqlAutTome = " SELECT Chapitre.NomChap, Mangas.NomMangas" SqlAutTome SqlAutTome & " FROM ((Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlAutTome SqlAutTome & " INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas) " SqlAutTome SqlAutTome & " INNER JOIN Tome ON (Tome.CodeTome Chapitre.CodeTome) " SqlAutTome SqlAutTome & " AND (Mangas.CodeMangas Tome.CodeMangas)" SqlAutTome = SqlAutTome & " WHERE (((Auteur.NomAuteur)='" & Txt_Auteur.Text & "')" SqlAutTome = SqlAutTome & " AND ((Tome.NomTome)='" & Txt_Tome.Text & "'));" 'Nombre de chapitre SqlAutTome1 = " SELECT count(*) as nbchapitre" SqlAutTome1 SqlAutTome1 & " FROM ((Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlAutTome1 SqlAutTome1 & " INNER JOIN Chapitre ON Mangas.CodeMangas Chapitre.CodeMangas) " SqlAutTome1 SqlAutTome1 & " INNER JOIN Tome ON (Tome.CodeTome Chapitre.CodeTome) AND (Mangas.CodeMangas = Tome.CodeMangas)" SqlAutTome1 SqlAutTome1 & " WHERE(((Tome.NomTome) '" & Txt_Tome.Text & "')" SqlAutTome1 SqlAutTome1 & " And ((Auteur.NomAuteur) '" & Txt_Auteur.Text & "'));" 'RsAutTome.Open(SqlAutTome, cnx, CursorTypeEnum.adOpenStatic) RsAutTome = cnx.Execute(SqlAutTome) RsAutTome1 = cnx.Execute(SqlAutTome1) txt_nbchap.Text = RsAutTome1.Fields("nbchapitre").Value lstchap.Items.Clear() While Not RsAutTome.EOF lstchap.Items.Add(RsAutTome.Fields("Nomchap").Value) L_titreManga.Text = RsAutTome.Fields("NomMangas").Value RsAutTome.MoveNext() End While 'MsgBox(valeur) Case 7 'recherche le chapitree le tome et l'auteur dans la base de donnée et affiche les images en question SqlChapTomeAut = " SELECT count(Chapitre.NomChap) as nb" SqlChapTomeAut SqlChapTomeAut & " FROM ((Auteur INNER JOIN Mangas ON Auteur.CodeAuteur Mangas.CodeAuteur) " SqlChapTomeAut SqlChapTomeAut & " INNER JOIN Tome ON Mangas.CodeMangas Tome.CodeMangas) " SqlChapTomeAut SqlChapTomeAut & " INNER JOIN Chapitre ON (Tome.CodeTome Chapitre.CodeTome) " SqlChapTomeAut SqlChapTomeAut & " AND (Mangas.CodeMangas Chapitre.CodeMangas)" SqlChapTomeAut = SqlChapTomeAut & " WHERE (((Auteur.NomAuteur)='" & Txt_Auteur.Text & "')" SqlChapTomeAut = SqlChapTomeAut & " AND ((Tome.NomTome)='" & Txt_Tome.Text & "')" SqlChapTomeAut = SqlChapTomeAut & " AND ((Chapitre.NomChap)='" & Txt_Nomchap.Text & "'));" 'RsChapTomeAut.Open(SqlChapTomeAut, cnx, CursorTypeEnum.adOpenStatic) RsChapTomeAut = cnx.Execute(SqlChapTomeAut) L_titreManga.Text = RsChapTomeAut.Fields("NomMangas").Value If RsChapTomeAut("nb").Value = 1 Then affichagevb.Show() L_titreManga.Text = RsAuteur.Fields("NomMangas").Value Else MsgBox("vous avez mal saisi une donnée") End If 'MsgBox(valeur) End Select 'MsgBox(valeur) End Sub Private Sub cmd_Fermer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_Fermer.Click Me.Close() 'Me.Hide() 'affichagevb.Show() End Sub Private Sub cmb_effacer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_effacer.Click T_user.Text = "" Txt_Auteur.Text = "" Txt_Tome.Text = "" Txt_Nomchap.Text = "" lst_Tomes.Items.Clear() lstchap.Items.Clear() txt_nbtomes.Text = "" txt_nbchap.Text = "" L_titreManga.Text = "Bibliothèque" End Sub Private Sub T_user_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles T_user.TextChanged T_user.UseSystemPasswordChar = True If T_user.Text = "med@s918" Then B_ajouter.Visible = True B_Supprimer.Visible = True C_Auteur.Visible = True C_Chapitre.Visible = True C_Tome.Visible = True cmb_recherche.Visible = False End If End Sub Private Sub Txt_Nomchap_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Txt_Nomchap.TextChanged If Txt_Nomchap.Text = "ajouter" Then T_user.Visible = True L_identifiant.Visible = True End If End Sub Private Sub B_ajouter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B_ajouter.Click SqlInsChap = " INSERT INTO Chapitre (CodeChap, NomChap, CodeMangas, CodeTome)" 'SqlInsChap=SqlInsChap & " VALUES ('" & Txt_Nomchap.Text & "','" & & "','" & & "','" & & "');" End Sub Private Sub B_Supprimer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B_Supprimer.Click End Sub Private Sub C_Chapitre_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C_Chapitre.CheckedChanged If C_Chapitre.Checked = True Then C_Tome.Checked = False C_Auteur.Visible = True C_Chapitre.Visible = True C_Tome.Visible = True lbl_Auteur.Visible = True Txt_Auteur.Visible = True L_identifiant.Text = "CodeChapitre" lbl_chap.Text = "NomChapitre" lbl_Tome.Text = "CodeTome" lbl_Auteur.Text = "CodeMangas" End If End Sub Private Sub C_Tome_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C_Tome.CheckedChanged If C_Tome.Checked = True Then C_Chapitre.Checked = False C_Auteur.Checked = False C_Auteur.Visible = True C_Chapitre.Visible = True C_Tome.Visible = True lbl_Auteur.Visible = True Txt_Auteur.Visible = True L_identifiant.Text = "CodeTome" lbl_chap.Text = "NomTome" lbl_Tome.Text = "NbChap" lbl_Auteur.Text = "CodeMangas" End If End Sub Private Sub C_Auteur_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C_Auteur.CheckedChanged If C_Auteur.Checked = True Then C_Tome.Checked = False C_Chapitre.Checked = False C_Auteur.Visible = True C_Chapitre.Visible = True C_Tome.Visible = True L_identifiant.Text = "CodeAuteur" lbl_chap.Text = "NomAuteur" lbl_Tome.Text = "PrénomAuteur" lbl_Auteur.Visible = False Txt_Auteur.Visible = False End If End Sub End Class
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questioncnx.ConnectionString = chainedeconnection cnx.Open()