• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

c# dodawanie danych do bazy danych

Object Storage Arubacloud
0 głosów
2,320 wizyt
pytanie zadane 18 lutego 2017 w C# przez Rout Bywalec (2,350 p.)

Witam,

Mam program który korzysta z bazy danych. Ma ona jedną tabelę i chce w tej tabeli zapisywać dane. Robię to w ten sposób: 

 public void AddData(string CompanyName,string Name, string Surtname, string Street, string ZipCode, string City)
        {
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                SqlCommand cmd = new SqlCommand("INSERT INTO Contact (CompanyName, Name, Surname, Street, ZipCode, City ) VALUES (@CompanyName, @Name, @Surname, @Street, @ZipCode, @City)");
                cmd.CommandType = CommandType.Text;
                cmd.Connection = connection;
                cmd.Parameters.AddWithValue("@CompanyName", CompanyName);
                cmd.Parameters.AddWithValue("@Name", Name);
                cmd.Parameters.AddWithValue("@Surname", Surtname);
                cmd.Parameters.AddWithValue("@Street", Street);
                cmd.Parameters.AddWithValue("@ZipCode", ZipCode);
                cmd.Parameters.AddWithValue("@City",City);
                connection.Open();
                cmd.ExecuteNonQuery();
            }
        }


Żaden błąd się nie pojawia, a gdy wyłączę program to baza danych jak była pusta tak jest nadal. Czy robię coś źle ? 

 


Pozdrawiam Rout

komentarz 18 lutego 2017 przez Rout Bywalec (2,350 p.)
Może brakuje tam jakiegoś save ?

1 odpowiedź

0 głosów
odpowiedź 19 lutego 2017 przez Bartłomiej Łaski Mądrala (5,100 p.)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SQLite;
using System.Windows;

namespace SimpleDatabasePersons
{
    public static class SimpleDatabase
    {
        public static void AddPerson(string name, string surname, string data, string pathImage)
        {
            //MessageBox.Show("INSERT INTO People(NAME, SURNAME, DATA_UR, IMAGE) values ('" + name + "','" + surname + "','" + data + "','" + pathImage + "')");

            SQLiteConnection cn = new SQLiteConnection("data source=Person.db3");
            SQLiteCommand cmd = new SQLiteCommand(cn);
            cn.Open();
            cmd.CommandText = "INSERT INTO People(NAME, SURNAME, DATA_UR, IMAGE) values ('" + name + "','" + surname + "','" + data + "','" + pathImage + "')";
            cmd.ExecuteNonQuery();
            cn.Close();
        }

        public static void UpdatePerson(string id, string name, string surname, string data, string pathImage)
        {
            SQLiteConnection cn = new SQLiteConnection("data source=Person.db3");
            SQLiteCommand cmd = new SQLiteCommand(cn);

            cn.Open();
            cmd.CommandText = "UPDATE People SET NAME = " + name + ", SURNAME = " + surname + ", DATA = " + data + ", IMAGE = " + pathImage + " WHERE ID = " + id;
            cmd.ExecuteNonQuery();
            cn.Close();
        }

        public static void DeletePerson(string id)
        {
            SQLiteConnection cn = new SQLiteConnection("data source=Person.db3");
            SQLiteCommand cmd = new SQLiteCommand(cn);

            cn.Open();
            cmd.CommandText = "DELETE FROM People WHERE ID = " + id;
            cmd.ExecuteNonQuery();
            cn.Close();
        }
    }
}

 

Moj kod na dodawanie i usuwanie elementow z bazy danych :). Te dwie opcje działaja na 100% poniewaz je testowale, modyfikacji jeszcze nie bo zajalem sie innym projektem.

Pozdrawiam : )

 

1
komentarz 28 lutego 2017 przez adrian17 Ekspert (344,860 p.)
Silnie sugeruję użycie nazywanych parametrów (`cmd.Parameters.Add`) zamiast ręcznego komponowania stringa z zapytaniem.
komentarz 28 lutego 2017 przez Bartłomiej Łaski Mądrala (5,100 p.)
Masz racje :), to jest pierwszy kod jaki pisalem jeżeli chodzi o SQLite :). Dzisiaj bym troche inaczej go napisal by był bardziej uniwersjalny.

Podobne pytania

0 głosów
1 odpowiedź 980 wizyt
0 głosów
1 odpowiedź 180 wizyt
0 głosów
3 odpowiedzi 1,118 wizyt
pytanie zadane 7 lipca 2015 w PHP przez Mateusz Analityk Stary wyjadacz (13,710 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...