Click here to Skip to main content
15,891,204 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Hello to all/ Sorry for my English firstly)))

SQL
UPDATE       Ank_data_women
SET                Family = N'3423', Name = N'1', Surname = N'2', Date_birth = '26.05.1990', Phone_number = N'4', Place_birth = 1
FROM            Ank_data_women INNER JOIN
                         Place_birth ON wom.Place_birth = Place_birth.[Key]
WHERE        (Ank_data_women.[Key] = 45)

This code goodly work on Sql, but when i write this on c# i get the error

C#
public bool EditMember(string Name, string Family, string Surname, DateTime Date_birth, string Phone_number, int Place_birth)
        {
            EditPeople edit = new EditPeople();
 
            bool flag = false;
 
            
            string  i= edit.textBox4.Text; //
           // MessageBox.Show(Convert.ToString(i));
            string query = string.Format("UPDATE Ank_data_women SET Family = @Family, Name =@Name, Surname = @Surname, Date_birth =  @Date_birth, Phone_number = @Phone_number, Place_birth = @Place_birth  FROM Ank_data_women won INNER JOIN  Place_birth ON won.Place_birth = Place_birth.[Key] WHERE  (won.[Key] = 45"); //
                       
            
            
            using (SqlConnection con = new SqlConnection(connectionstring))                                   
            {
 
                SqlCommand com = new SqlCommand(query, con);
 
                con.Open();
 
                SqlParameter param = new SqlParameter();
 
                param.ParameterName = "@Family";
                param.Value = Family;
                param.SqlDbType = System.Data.SqlDbType.NChar;
 
                com.Parameters.Add(param);
 
                param = new SqlParameter();
                param.ParameterName = "@Name";
                param.Value = Name;
                param.SqlDbType = System.Data.SqlDbType.NChar;
 
                com.Parameters.Add(param);
 
                param = new SqlParameter();
                param.ParameterName = "@Surname";
                param.Value = Surname;
                param.SqlDbType = System.Data.SqlDbType.NChar;
 
                com.Parameters.Add(param);
 
                param = new SqlParameter();
                param.ParameterName = "@Date_birth";
                param.Value = Date_birth;
                param.SqlDbType = System.Data.SqlDbType.DateTime;
 
                com.Parameters.Add(param);
 
                param = new SqlParameter();
                param.ParameterName = "@Phone_number";
                param.Value = Phone_number;
                param.SqlDbType = System.Data.SqlDbType.NChar;
 
                com.Parameters.Add(param);
 
 
 
                param = new SqlParameter();
                param.ParameterName = "@Place_birth";
                param.Value = Place_birth;
                param.SqlDbType = System.Data.SqlDbType.Int;
 
                com.Parameters.Add(param);
 
                {
                    if (com.ExecuteNonQuery() == 1)
                        flag = true;
                }
 
 
 
            }
            return flag;
 
 
 
 
        }


Thats data in my table
Key | Family | Name | Surname | Date_birth | Phone_number | Place_Birth

45 Gregory Marta Smith 26.05.1990 62-33-33 Moscow
46 sdaf sdsdfds Ssdfs 26.05.1990 22-44-55 Moscow
47 sdfgdfy Marta Smith 26.05.1990 77-77-66 Moscow
48 dsfgdfg sdfgdfs dsfgdf 26.05.1990 88-77-77 Moscow


picture

Thats is picture of my Diagram
Posted

1 solution

Seems that you're missing one parenthesis:
WHERE  (won.[Key] = 45");

should likely be
WHERE  (won.[Key] = 45)");
 
Share this answer
 
Comments
Kim Togo 13-Aug-11 11:19am    
Spot on.
Wendelius 13-Aug-11 14:54pm    
Thanks :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900