sql >> Database >  >> RDS >> Sqlserver

De url opslaan in SQLSERVER 2005 met behulp van C#-code (datasets)

Het probleem is dat u de opdracht niet daadwerkelijk uitvoert op de database. U definieert het InsertCommand om te gebruiken, maar het wordt niet uitgevoerd.

Op basis van die code zie ik niet dat je toch een DataAdapter/DataSet moet gebruiken, gebruik gewoon een SqlCommand om de invoeging uit te voeren, die lichter is. Zoiets als dit:

public void Storetxt(String txt)
{
    //connection to the database
    string connection = "Data Source=.\\sqlexpress2005;Initial Catalog=PtsKuratlas;Integrated Security=True";
    SqlConnection conn = null;
    SqlCommand cmd = null;
    try
    {
        conn = new SqlConnection(connection);
        cmd = new SqlCommand("INSERT INTO gti_analytics (Links) VALUES (@Link)", conn);
        cmd.CommandType = CommandType.Text;
        cmd.Parameters.AddWithValue("@Link", txt);
        conn.Open();
        cmd.ExecuteNonQuery();
    }
    catch{//handle exceptions}
    finally
    {
        if (cmd != null) cmd.Dispose();
        if (conn != null) 
        {
            if (conn.State == ConnectionState.Open) conn.Close();
            conn.Dispose();
        }
    }
}

Ik zou ook aanraden om ntext hiervoor niet in je db te gebruiken. Als je echt unicode-ondersteuning nodig hebt, gebruik dan nvarchar, dat tot 4000 tekens kan gaan pre-sql 2005, of nvarchar(max) dat zoveel als ntext kan opslaan vanaf SQL 2005. Als je geen unicode-ondersteuning nodig hebt, gebruik dan varchar (8000 tekens pre-sql 2005, VARCHAR(MAX) vanaf SQL 2005 staat hetzelfde toe als tekst)



  1. Hoe formatteer ik een getal met komma's in T-SQL?

  2. Maak meerdere tabellen door door een query te bladeren

  3. Fout 'Onjuiste SET-opties' bij het bouwen van een databaseproject

  4. Hoe krijg ik een willekeurige standaardwaarde voor een kolom in MySQL/Rails