| |
VB.NET - Ein- und UmsteigerDataGridView änderung überprüfen | | | Autor: Samuel | Datum: 23.03.10 11:27 |
| Hallo,
ich programmiere gerade an einer kleinen Datenbank die Hauptsächlich zur Verwaltung von IP-Adressen verwendet wird.
Ich verwende zur Auflistung und Bearbeitung der Datenbank ein DataGridView.
Jetzt soll bei der Eingabe und Bearbeitung der IP-Adresse eines Eintrages, überprüft werden, ob diese IP schon einmal vergeben wurde oder noch frei ist.
Ich hab mich da jetzt eine weile damit gespielt aber nichts befriedigendes geschafft.
grüße
Samuel Ebert | |
Re: DataGridView änderung überprüfen | | | Autor: Manfred X | Datum: 23.03.10 15:04 |
| Hallo!
[I]Ich verwende zur Auflistung und Bearbeitung der Datenbank
ein DatagridView.[/I]
Das ist nicht sehr aussagekräftig.
Bindung zur Datenbank?
Datset/Datatable oder Klasse?
Bindung an das DatagridView? BindingSource?
Spalteneigenschaften? Wie sind die Adressen abgelegt?
usw.
[I]Ich hab ... jetzt eine weile damit gespielt,
aber nichts befriedigendes geschafft.[/I]
Auch nicht aussagekräftig.
MfG
Manfred
Beitrag wurde zuletzt am 23.03.10 um 15:09:12 editiert. | |
Re: DataGridView änderung überprüfen | | | Autor: Samuel | Datum: 24.03.10 07:11 |
| Ich arbeite mit einer Access-Datenbank.Mehr wie 300-400 Einträge werdens auch nicht.
Public Class frmMain
Dim con As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim reader As OleDb.OleDbDataReader
Dim adapter As New OleDb.OleDbDataAdapter
Dim view As System.Data.DataView
Dim table As New DataTable
Dim myDataSet As New DataSet
_____________________________________________________________________
Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data" & _
"Source=C:\IPVerteilung.mdb"
cmd.Connection = con
cmd.CommandText = "select * from IPVerteilung"
'Datenbank in DataGriedView ansehen
adapter.SelectCommand = cmd
adapter.Fill(myDataSet, "IPVerteilung")
dgvDatenbank.DataSource = myDataSet
dgvDatenbank.DataMember = "IPVerteilung"
End Sub
______________________________________________________________________________
Private Sub cmdUpdate_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles cmdUpdate.Click
'Neuen Eintrag von DataGridView in Datenbank eintragen
Dim cmdb As OleDbCommandBuilder = New OleDbCommandBuilder(adapter)
adapter.Update(myDataSet, "IPVerteilung")
myDataSet.Clear()
'Datenbank in DataGriedView ansehen
adapter.SelectCommand = cmd
adapter.Fill(myDataSet, "IPVerteilung")
dgvDatenbank.DataSource = myDataSet
dgvDatenbank.DataMember = "IPVerteilung"
End Sub
End Class | |
Re: DataGridView änderung überprüfen | | | Autor: Samuel | Datum: 24.03.10 13:06 |
| Vielen Dank für eure Hilfen
Habs jetzt ganz anders gemacht^^
Was ich in des DataGridView reinschreibe, steht ja noch nicht in der Datenbank. Also kann ich das gerade neu eingeschrieben mit der Datenbank vergleichen und fertig.
Mein Code dazu, falls es jemand brauchen kann
Private Sub dgvDatenbank_CellEndEdit(ByVal sender As Object, ByVal e As _
System.Windows.Forms.DataGridViewCellEventArgs) Handles _
dgvDatenbank.CellEndEdit
If dgvDatenbank.CurrentCell.ColumnIndex = 3 Then
con.Open()
cmd.Connection = con
cmd.CommandText = "Select * From IPVerteilung"
reader = cmd.ExecuteReader()
Do While reader.Read()
If dgvDatenbank.CurrentCell.Value = (reader("IP")) Then
MsgBox("!!!IP schon vergeben!!!")
dgvDatenbank.CurrentCell.Value = OldValue
End If
Loop
con.Close()
End If
End Sub In OldValue steht der alte Eintrag. Wird erzeugt, wenn man in das Feld klickt | |
Re: DataGridView änderung überprüfen | | | Autor: Samuel | Datum: 25.03.10 07:32 |
| Ich leß lieber die DB neu ein, da an anderen Stellen die DB geupdatet werden kann. Da ich wie oben geschrieben nie über 300-400 Einträge komme, ist es zeitlich keine große Rechenleistung.
Werde aber jetzt nur die IP-Spalte einlesen. Danke^^
Das mit dem Unique hab ich nicht hinbekommen. Bin halt ein Anfänger^^ Hättest du evtl. nen kleinen Beispielcode dafür^^
Eine andere Frage. Ich möchte mit einem Button alle freien IPs anzeigen lassen. DAs wäre noch wichtig
Die IP-Einträge sind 0-255 (Wobei 0 und 255 ja wegfallen)
Jetzt wil ich irgendwie die Differenz von allen schon eingetragenen IP-Adressen mit allen möglichen Ausgeben lassen können.
Könntest du mir da evtl. helfen. Dann wäre ich mit meinem kleinen Progrämmchen fertig^^
grüße und schon mal vielen Dank
Samuel | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats TOP! Unser Nr. 1
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|