2014-04-19 3 views
0

Je souhaite insérer des données d'un ensemble de données dans asp.net dans une table SQL Server.Comment insérer des données dans une table de données SQL via une procédure stockée

Mais je ne peux pas passer les valeurs de jeu de données à ma procédure stockée plz help me

Voici mon code

private static SqlCommand WriteDatabase(SqlConnection conn) 
{ 
      SqlCommand cmd = new SqlCommand(SP_insertData); 
      cmd.Parameters.Clear(); 
      cmd.CommandType = CommandType.StoredProcedure; 
      SqlParameterCollection pc = cmd.Parameters; 

      pc.Add(CreateParameter("abID", System.Data.SqlDbType.Int)); 
      pc.Add(CreateParameter("fHitType", System.Data.SqlDbType.Int)); 
      pc.Add(CreateParameter("DateOfHit", System.Data.SqlDbType.DateTime)); 
      pc.Add(CreateParameter("TimeOfHit", System.Data.SqlDbType.Int)); 
      pc.Add(CreateParameter("fEmpid", System.Data.SqlDbType.Int)); 

      cmd.ExecuteNonQuery(); 

      return cmd; 
} 

private static SqlParameter CreateParameter(string p, SqlDbType sqlDbType) 
{ 
     SqlParameter parameter = new SqlParameter("@" + p, sqlDbType); 
     parameter.SourceColumn = p; 
     return parameter; 
} 

Je ne peux pas transmettre des valeurs de jeu de données à ma procédure stockée

+2

Où est votre DataSet dans ce code? – thepirat000

+0

c'est mon problème je ne sais pas comment le résoudre – unhappyman3

+0

j'essaye de créer un service de fenêtres pour lire des données d'une base de données et l'insérer dans une autre base de données d'abord je lis des données de DB1 et copie dans un ensemble de données copier mes données dans un autre ensemble de données cette étape fonctionne correctement, mais maintenant je ne peux pas lire les données du deuxième ensemble de données et l'insérer dans ma base de données – unhappyman3

Répondre

0

Avez-vous essayez ce code:

SqlConnection oConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["YourConnectionString"].ConnectionString); 

    public Boolean InserData(string abID, string fHitType,string DateOfHit, string TimeOfHit,string fEmpid) 
{ 
    // SqlConnection oConnection = new SqlConnection("Connection_String"); 
    SqlCommand oCommand = new SqlCommand(); 
    oCommand.Connection = oConnection; 
    oCommand.CommandText = "SP_insertData"; 
    oCommand.CommandType = CommandType.StoredProcedure; 
    oCommand.Parameters.AddWithValue("@abID", abID); 
    oCommand.Parameters.AddWithValue("@fHitType", fHitType); 
    oCommand.Parameters.AddWithValue("@DateOfHit", DateOfHit); 
    oCommand.Parameters.AddWithValue("@TimeOfHit", TimeOfHit); 
    oCommand.Parameters.AddWithValue("@fEmpid", fEmpid); 
    oConnection.Open(); 
    Boolean Result = Convert.ToBoolean(oCommand.ExecuteNonQuery()); 
    oConnection.Close(); 
    return Result; 
} 

Il retourne vrai ou faux retours vrai signifie que vos données ont bien été enregistrées et un moyen de rappel faux pas sauvé ...

+0

je l'ai essayé mais ça ne fonctionne pas – unhappyman3

+0

Quel est le problème obtenez-vous .. –

+0

je veux passer des paramètres de mon ensemble de données à ma procédure stockée – unhappyman3

0

S'il vous plaît Essayez-le

SqlConnection oConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["YourConnectionString"].ConnectionString); 

public int InserData(string abID, string fHitType, string DateOfHit, string TimeOfHit, string fEmpid) 
{    
    SqlCommand oCommand = new SqlCommand("SP_insertData", oConnection);   
    oCommand.CommandType = CommandType.StoredProcedure; 
    oCommand.Parameters.AddWithValue("@abID", abID); 
    oCommand.Parameters.AddWithValue("@fHitType", fHitType); 
    oCommand.Parameters.AddWithValue("@DateOfHit", DateOfHit); 
    oCommand.Parameters.AddWithValue("@TimeOfHit", TimeOfHit); 
    oCommand.Parameters.AddWithValue("@fEmpid", fEmpid); 
    oConnection.Open(); 
    int Result = oCommand.ExecuteNonQuery(); 
    oConnection.Close(); 
    return Result; 
} 

si le retour de type 1 puis insérez suceess autre pas avec succès

Questions connexes