Entfernen von Einträgen aus SQL Array Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Nussbeisser
Posts: 118
Joined: 17 Jul 2019, 08:49

Entfernen von Einträgen aus SQL Array

12 Apr 2024, 16:46

Hallo Just me,

Entschuldige, dass ich erneut um deine Hilfe bitte. Ich verwende deine Class_SQLiteDB.ahk für AHK v2.
Zu Beginn hole ich mir Inhalte aus der Datenbank durch eine SQL-Anfrage.

Code: Select all

SQL := "SELECT cusId, cusName FROM allCus;"
	If !DB.Exec(SQL)
	   MsgBox("Msg:`t" . DB.ErrorMsg . "`nCode:`t" . DB.ErrorCode, "SQLite Error", 16)
	If !DB.GetTable(SQL, &Result)
	   MsgBox("Msg:`t" . DB.ErrorMsg . "`nCode:`t" . DB.ErrorCode, "SQLite Error", 16)



Die Daten werden in einer Listview geladen. Wenn ich einen Eintrag in der Listview doppelt anklicke, soll der entsprechende Eintrag aus der Listview, der Datenbank und dem Array entfernt werden.

Die Einträge werden erfolgreich aus der Listview und der Datenbank gelöscht, aber ich habe Schwierigkeiten, sie auch aus dem Array zu entfernen. Ich möchte nicht jedes Mal, wenn ich eine Zeile lösche, eine neue Anfrage an die Datenbenk senden. Ich möchte den Wert auch direkt aus dem Array entfernen, aber ich schaffe es leider nicht.


Hier ist die entsprechende Funktion:

Code: Select all

Cus_Del(LV, RowNum)
{
   MouseGetPos(,,, &mouseOverClassNN)
   cusIdCont := LV.GetText(RowNum, 1)
   cusNameCont := LV.GetText(RowNum, 2)
	If (cusId = "") || (RowNum = 0) || InStr(mouseOverClassNN, 'SysHeader')
	   Return

   SQLDelete := "DELETE FROM allCus WHERE cusId = " cusIdCont ";"
	If !DB.Exec(SQLDelete)
	   MsgBox("Msg:`t" . DB.ErrorMsg . "`nCode:`t" . DB.ErrorCode, "SQLite Error", 16)
   LV.Delete(RowNum)


/*
;??
;das klappt nicht.
	Loop Result.Rows.Length
	{

		If (Result.Rows[A_index][1] = cusIdCont)
		   Result.Rows.Delete(A_Index)
		   Result.Rows.RemoveAt(A_Index)
	}

*/
}

vielen Dank

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 21 guests