<div dir="ltr"><div><div><div><div><div><div><div><div>Hi All,<br></div>I am new on lazarus,<br></div>I got one form on which I performed  2 onClick even on 2 button:<br></div>The first button its for INSERT the data in the SQLite database,<br></div>The second button its for CLEAR the information on the form.<br></div>After I have clicked on the first button to INSERT the data, the operation goes successfully; if I clicked on the second button who is to removed all the data on the fields, then after  refield again the information and clicked on the INSERT button, I received a funny message: SQLQeuryLite: Cannot open a non-select statement.<br></div>I tried to re-activate/restart the transaction component but still having the same error.<br></div>Please see below my codes:<br></div>------------------------------------------------FIRST BUTTON----------------------------------------------<br><div><br>else begin<br>       //DB connections.<br>    if DataModuleConn.SQLTransSQLite.Active=False then<br>      begin<br>       DataModuleConn.SQLite3Conn.Connected:=True;<br>       DataModuleConn.SQLTransSQLite.Active:=True;<br>       DataModuleConn.SQLQuerySQLite.Active:=True;<br><br>       DataModuleConn.SQLQuerySQLite.SQL.Text:='INSERT INTO loginConnection (hostname, hostip, dbname, username, password) VALUES ('<br>                                               +':getHOSTNAME, :getHOSTIP, :getDBNAME, :getUSERNAME, :getPASSWORD);';<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTNAME').AsString:=lblEdtHostFQDN.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTIP').AsString:=lblEdtHostIP.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getDBNAME').AsString:=lblEdtDBName.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getUSERNAME').AsString:=lblEdtDBuserName.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getPASSWORD').AsString:=lblEdtDBPassword.Text;<br><br>       DataModuleConn.SQLQuerySQLite.ExecSQL;<br><br>       DataModuleConn.SQLQuerySQLite.SQL.Text:='INSERT INTO textConnection (hostname, hostip, dbname, username, password) VALUES ('<br>                                               +':getHOSTNAME, :getHOSTIP, :getDBNAME, :getUSERNAME, :getPASSWORD);';<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTNAME').AsString:=lblEdtHostFQDN1.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTIP').AsString:=lblEdtHostIP1.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getDBNAME').AsString:=lblEdtDBName1.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getUSERNAME').AsString:=lblEdtDBuserName1.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getPASSWORD').AsString:=lblEdtDBPassword1.Text;<br><br>       DataModuleConn.SQLQuerySQLite.ExecSQL;<br><br>       DataModuleConn.SQLQuerySQLite.SQL.Text:='INSERT INTO binaryConnection (hostname, hostip, dbname, username, password) VALUES ('<br>                                               +':getHOSTNAME, :getHOSTIP, :getDBNAME, :getUSERNAME, :getPASSWORD);';<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTNAME').AsString:=lblEdtHostFQDN2.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getHOSTIP').AsString:=lblEdtHostIP2.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getDBNAME').AsString:=lblEdtDBName2.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getUSERNAME').AsString:=lblEdtDBuserName2.Text;<br>       DataModuleConn.SQLQuerySQLite.Params.ParamByName('getPASSWORD').AsString:=lblEdtDBPassword2.Text;<br><br>       DataModuleConn.SQLQuerySQLite.ExecSQL;<br><br>       ShowMessage(msgSuccessful + lisLineEnding + msgSaved);<br><br>       DataModuleConn.SQLTransSQLite.Commit;<br>       //DataModuleConn.SQLQuerySQLite.Close;<br><br>          bitBtnOK.Caption:=liBtnUpdate;<br>          bitBtnOK.Enabled:=False;<br>          //DataModuleConn.SQLTransSQLite.StartTransaction;<br>    end else<br>       begin<br>       DataModuleConn.SQLite3Conn.Connected:=False;<br>       DataModuleConn.SQLTransSQLite.Active:=False;<br>       DataModuleConn.SQLQuerySQLite.Active:=False;<br>       end;<br>  end;  <br><br>------------------------------------------------SECOND BUTTON-----------------------------------------<br><br>                   <br>begin<br>   lblEdtHostFQDN.Text:='';<br>   lblEdtHostIP.Text:='';<br>   lblEdtDBName.Text:='';<br>   lblEdtDBuserName.Text:='';<br>   lblEdtDBPassword.Text:='';<br>   lblEdtDBPasswordRepeat.Text:='';<br><br>   lblEdtHostFQDN1.Text:='';<br>   lblEdtHostIP1.Text:='';<br>   lblEdtDBName1.Text:='';<br>   lblEdtDBuserName1.Text:='';<br>   lblEdtDBPassword1.Text:='';<br>   lblEdtDBPasswordRepeat1.Text:='';<br><br>   lblEdtHostFQDN2.Text:='';<br>   lblEdtHostIP2.Text:='';<br>   lblEdtDBName2.Text:='';<br>   lblEdtDBuserName2.Text:='';<br>   lblEdtDBPassword2.Text:='';<br>   lblEdtDBPasswordRepeat2.Text:='';<br><br>   ckBoxShowPassword.Checked:=False;<br>   ckBoxShowPassword1.Checked:=False;<br>   ckBoxShowPassword2.Checked:=False;<br>   ckBoxSameAsLogin.Checked:=False;<br>   ckBoxSameAsLogin1.Checked:=False;<br>   ckBoxSameAsTData.Checked:=False;<br><br>   lblEdtHostFQDN.SetFocus;<br><br>   bitBtnOK.Caption:=lisOK;<br>   bitBtnOK.Enabled:=True;<br><br>   if DataModuleConn.SQLTransSQLite.Active=True then<br>       DataModuleConn.SQLTransSQLite.Active:=False;<br>end;                <br><br></div><div>THANKS                 </div></div>