IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
dr.pak
Člen
Avatar
dr.pak:27.12.2013 2:31

Prosím vás mohl by mi někdo poradit, nějak se z toho nemůžu vymotat.
Pokaždé při vložení mi to hodí chybu ExecuteNonQuery();

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Insert_test
{
    public partial class Form1 : Form
    {
        SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Patrik\AppData\Local\Temporary Projects\Insert test\Database1.mdf;Integrated Security=True;User Instance=True");
        SqlCommand cmd = new SqlCommand();
        SqlDataReader dr;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            cmd.Connection = cn;
            loadlist();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if(txtid.Text !="" & txtname.Text != "")
            {
                cn.Open();
                cmd.CommandText = "insert into info (id,name) values (´" +txtid.Text+ "´,´" +txtname.Text+ "´)";
                cmd.ExecuteNonQuery();
                cmd.Clone();
                MessageBox.Show("Inserted!" , "Info");
                cn.Close();
                txtid.Text = "";
                txtname.Text = "";
                loadlist();
            }
        }
        private void loadlist()
        {
            listBox1.Items.Clear();
            listBox2.Items.Clear();
            cn.Open();
            cmd.CommandText = "select * from info";
            dr = cmd.ExecuteReader();
            if (dr.HasRows)
            {
                while (dr.Read())
                {
                    listBox1.Items.Add(dr[0].ToString());
                    listBox2.Items.Add(dr[1].ToString());
                }
            }
            cn.Close();
        }

        private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            ListBox l = sender as ListBox;
            if (l.SelectedIndex != -1)
            {
                listBox1.SelectedIndex = l.SelectedIndex;
                listBox2.SelectedIndex = l.SelectedIndex;
            }
        }
    }
}
Editováno 27.12.2013 2:36
 
Odpovědět
27.12.2013 2:31
Avatar

Člen
Avatar
Odpovídá na dr.pak
:27.12.2013 10:34

nemáš v tom insertu místo apostrofu čárky (nad písmena)?

 
Nahoru Odpovědět
27.12.2013 10:34
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na dr.pak
David Hartinger:27.12.2013 10:38

Nebezpečný kód plný injekcí a ještě tam máš špatné uvozovky. Přečti si jak se to má dělat v místních tutoriálech.

Nahoru Odpovědět
27.12.2013 10:38
New kid back on the block with a R.I.P
Avatar
dr.pak
Člen
Avatar
Odpovídá na
dr.pak:27.12.2013 10:49

exyi dík :-)

 
Nahoru Odpovědět
27.12.2013 10:49
Avatar

Člen
Avatar
Odpovídá na dr.pak
:27.12.2013 11:36

nejlepsi bys to mel pres LINQ to SQL nebo Entity Framework. A kdyz uz to delas takto, tak ty data dej do parametru ne do toho dotazu.

 
Nahoru Odpovědět
27.12.2013 11:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.