Announcement

Collapse
No announcement yet.

DataType "date" Problem

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DataType "date" Problem

    Hallo!

    Ich arbeite mit dem Visual Studio 2005 (C#) und dem ADS 8.1 und habe folgendes Problem!

    Ich habe mir eine kleine Applikation in der ich Datensätze anlegen, löschen und ändern kann geschrieben. Doch beim Anlegen oder ändern eines Datensatzes mit dem DataType "date" bekomme ich immer folgende Fehlermeldung:

    -----
    Error 7200: AQE Error: State = 07006; NativeError = 2109; [Extended Systems][Advantage SQL Engine]Conversion error AdsCommand query execution failed.
    -----

    Ich lasse dieses Feld in einem einem DataGridView und per DataBindings in einer "MaskedTextBox" ausgeben. Diese Applikation hatte ich vorher schon einmal geschrieben mit einer SQL-Datenbank und dort hatte ich den Typ "smalldatetime" benutzt und alles hat wunderbar geklappt!

    Hier nun mein Code fürs Hinzufügen eines Datensatzes:

    Code:
    private void btnContactAppend_Click(object sender, EventArgs e)
            {
                id_Kunden = masterGridView.SelectedRows[0].Cells[0].Value.ToString();
    
                DialogResult drKontakt = MessageBox.Show("Neuen Kontakt anlegen?", "Info", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
    
                if (drKontakt == DialogResult.Yes)
                {
    
                    string strSql = "INSERT INTO Kontakte " +
                        "(Datum, Kontakt, ParentID) " +
                        "VALUES(:Datum, :Kontakt, :ParentID)";
    
                    detailsCommand = new AdsCommand(strSql, con);
                    detailsCommand.Parameters.Add(":Datum", "Datum").Value = "";
                    detailsCommand.Parameters.Add(":Kontakt", "Kontakt").Value = "";
                    detailsCommand.Parameters.Add(":ParentID", "ParentID").Value = id_Kunden;
    
                    try
                    {
                        con.Open();
                        _SetReadWriteKontakte();
                        detailsCommand.ExecuteNonQuery();
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                    finally
                    {
                        con.Close();
                        detailsDataAdapter.Fill(ds.Tables["Kontakte"]);
                        detailsBindingSource.Position = detailsBindingSource.Count;
                    }
                }
                else
                {
                    //
                }
            }
    Ich hoffe, dass jemand einen Tipp für mich hat!

    MfG

    Echo

  • #2
    Code:
    detailsCommand.Parameters.Add(":Datum", "Datum").Value = NULL;
    oder
    detailsCommand.Parameters.Add(":Datum", "Datum").Value = System.Convert.ToDate("anystring");

    Comment

    Working...
    X