2012-03-22 4 views
-1

내가 MySQL 데이터베이스에 데이터를 삽입하려고에, 나는 다음과 같은 방법을 만들어이 삽입 된 데이터는 MySQL을

로컬 호스트에있는 데이터베이스

이것은 내가 작성한 방법이며 이처럼 사용됩니다.

 public void QueryBuilder(string command, string table, string[] columns, object[] values) 
    { 
     string insertStatement = command + " INTO " + table + "("; 

     foreach (string column in columns) 
     { 
      insertStatement = insertStatement + column + ","; 
     } 

     insertStatement = insertStatement.Remove(insertStatement.Length - 1) + ") VALUES ("; 

     int countParam = 1; 
     string[] paramList = new string[values.Length]; 

     foreach (object val in values) 
     { 
      string paramName = "@param" + countParam; 
      paramList[countParam - 1] = paramName; 
      countParam++; 
      insertStatement = insertStatement + paramName + ","; 
     } 

     insertStatement = insertStatement.Remove(insertStatement.LastIndexOf(',')) + ")"; 

     MySqlCommand com = new MySqlCommand(insertStatement, register.connection); 

     for (int i = 0; i < paramList.Length; i++) 
     { 
      com.Parameters.AddWithValue(paramList[i], values[i]); 
     } 
    } 

이것은

문제가 syntex이 아니라는 것이다 ....이

  rg.DatabaseConnection("localhost","root"," ","login"); 

     rg.Open(); 

     object[] myobj = new object[2]; 

     myobj[0] = username1; 
     myobj[1] = password1; 


     string[] mystring = new string[2]; 

     mystring[0] = "username"; 
     mystring[1] = "password"; 

     QueryBuilder("INSERT","users",mystring,myobj); 

     rg.Close(); 

내가 잘못 무슨 일이 일어나고 있는지 잘 모릅니다으로 일부 HLP는 좋은 것입니다 호출되는 방법입니다 오류가 발생했지만 데이터가 데이터베이스에 삽입되지 않습니다.

감사합니다 감사합니다 .. 우선 들어 :

+1

무엇이 오류입니까? 코드의 어느 부분에 도움이 필요합니까? – SkonJeet

+3

쿼리를 작성한 후에 실행할 수 있습니다. –

+0

왜 투표가 늦습니까? –

답변

1

, 당신의 QueryBuilder 방법의 끝에서

com.ExecuteNonQuery(); 

를 추가 (또는 다른 명령 개체를 반환 한 다음 보존 할 경우 실행 "QueryBuilderAndExecuter"가 아닌 "QueryBuilder"로서의 기능).

관련 문제