[c#] не добавляется запись в БД

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by j-prof, 19 Jan 2011.

  1. j-prof

    j-prof Banned

    Joined:
    29 Aug 2010
    Messages:
    321
    Likes Received:
    11
    Reputations:
    -4
    код метода отправки
    Code:
     
    public void AddUser(User u)
            {
                string sql = string.Format("Insert into {0}(Name, Passwd, Mode, PostCount, Regdate, Info) Values(@Name, @Passwd, @Mode, @PostCount, @Regdate, @Info)",TableName);
                using(SqlCommand cmd = new SqlCommand(sql,this.cn))
                {
                    SqlParameter p = new SqlParameter();
                    p.ParameterName = "@Name";
                    p.Value = u.Name;
                    p.SqlDbType = SqlDbType.NChar;
                    p.IsNullable = false;
                    p.Size = 12;
                    cmd.Parameters.Add(p);
                    p = new SqlParameter();
                    p.ParameterName = "@Passwd";
                    p.Value = u.Passwd;
                    p.SqlDbType = SqlDbType.NChar;
                    p.IsNullable = false;
                    p.Size = 32;
                    cmd.Parameters.Add(p);
                    p = new SqlParameter();
                    p.ParameterName = "@Mode";
                    p.Value = u.Mode;
                    p.SqlDbType = SqlDbType.NChar;
                    p.IsNullable = false;
                    p.Size = 26;
                    cmd.Parameters.Add(p);
                    p = new SqlParameter();
                    p.ParameterName = "@PostCount";
                    p.Value = u.PostCount;
                    p.SqlDbType = SqlDbType.Int;
                    p.IsNullable = false;                
                    cmd.Parameters.Add(p);
                    p = new SqlParameter();
                    p.ParameterName = "@Info";
                    p.Value = u.Info;
                    p.SqlDbType = SqlDbType.NChar;                
                    p.Size = 512;
                    cmd.Parameters.Add(p);
                    p = new SqlParameter();
                    p.ParameterName = "@RegDate";
                    p.Value = u.Name;
                    p.SqlDbType = SqlDbType.DateTime;
                    p.IsNullable = false;                
                    cmd.Parameters.Add(p);
                }
            }
    
    добавление
    Code:
     protected void Button1_Click(object sender, EventArgs e)
            {
                SqlHelp manager = new SqlManager("Data Source=CODESEVEN;Initial Catalog=tst_db;Integrated Security=True", "X_Users");
                manager.AddUser(new User(TextBox1.Text,TextBox2.Text,TextBox3.Text));
                manager.Dispose();
            }
     
    никаких екзепшенов
    но в бд пусто :mad:
    где ошибка
    в бд также есть столбец id примари кей с авто енкрементом
     
    #1 j-prof, 19 Jan 2011
    Last edited: 19 Jan 2011
  2. Irdis

    Irdis Elder - Старейшина

    Joined:
    6 Feb 2006
    Messages:
    248
    Likes Received:
    52
    Reputations:
    3
    Ну вот вы создали объект команда наделили его параметрами, а сделать Execute забыли.
    Т.е. команда сформирована но не исполнена.
     
    1 person likes this.
  3. j-prof

    j-prof Banned

    Joined:
    29 Aug 2010
    Messages:
    321
    Likes Received:
    11
    Reputations:
    -4
    ахаххахахх бля точно вот дурак
    кста в VS есть какойт конструктор ато за**ался для каждого столбца писать сток
     
    #3 j-prof, 19 Jan 2011
    Last edited by a moderator: 20 Jan 2011
  4. j-prof

    j-prof Banned

    Joined:
    29 Aug 2010
    Messages:
    321
    Likes Received:
    11
    Reputations:
    -4
    терь говорить неправильный синтаксис у ( я в sql новичёг подскажите где не так все ок вроде.

    и к скулям как такой метод устойчив?
     
    #4 j-prof, 19 Jan 2011
    Last edited by a moderator: 20 Jan 2011
  5. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    через Parameters инжект не сделаешь.
     
    1 person likes this.
  6. j-prof

    j-prof Banned

    Joined:
    29 Aug 2010
    Messages:
    321
    Likes Received:
    11
    Reputations:
    -4
    о шикарно