Zdravím , Předem upozorňuji , že jsem amatér. Mám problém s úpravou záznamů v databázi ,pokud zadám dvouslovný výraz do txtBoxu , tak databáze vyhodnotí mezeru mezi slovy jako oddělovač , a vyhodí mi chybu při pokusu o Update. Otázka : Jak deklaruji , že mezera není oddělovač záznámu? pro ukázku kód Update relace pro zápis:
case "UPDATE":
string[] tiv = query.Substring(query.LastIndexOf("VALUES") + 7).Split(new char[4] { '(', ',','\'', ')' }, StringSplitOptions.None);
if (query.LastIndexOf("WHERE") > -1)
{
if (QueryArray[4] == "VALUES")
{
string[] tcon = QueryArray[7].Split('=');
string[] tic = QueryArray[3].Split(new char[3] { '(', ',', ')' }, StringSplitOptions.RemoveEmptyEntries);
ValueObj = UpdateRecord(QueryArray[1], DataBase, StringArrayToString(tiv), StringArrayToString(tic), tcon[0], tcon[1]);
}
else
{
string[] tcon = QueryArray[3].Split('=');
ValueObj = UpdateRecord(QueryArray[1], DataBase, StringArrayToString(tiv), null, tcon[0], tcon[1]);
}
}
else
{
if (QueryArray[4] == "VALUES")
{
string[] tic = QueryArray[3].Split(new char[3] { '(', ',', ')' }, StringSplitOptions.RemoveEmptyEntries);
ValueObj = UpdateRecord(QueryArray[2], DataBase, StringArrayToString(tiv), StringArrayToString(tic));
}
else
{
ValueObj = UpdateRecord(QueryArray[2], DataBase, StringArrayToString(tiv), null);
}
}
Problém je , že když dám mezeru v txtBoxu , tak se mi rozhodí pořadí příkazů v "QueryArray" protože ta mezera mi rozdělí řádek a zapíše se nový. Nevím jestli je to pochopitelné, ale lépe se asi nevyjádřím :) Předem děkuji za rady
|