Bonjour
Lors du débogage une cette erreur s'affiche :
ORA-01747: spécification utilisateur.table.colonne, table.colonne ou colonne non valide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 List<Relève> listRelève = GetListRelève(readerrel);
            InsertListRelève(listRelève);
 
# region Table Relève
 
 
        private List<Relève> GetListRelève(SqlCeDataReader readerrel)
        {
            List<Relève> lrelèves = new List<Relève>();
            Relève relève;
            while (readerrel.Read())
            {
                relève = new Relève();
                relève.Idrelève = (int)readerrel["Idrelève"];
                relève.Refrelève = (int)readerrel["Refrelève"];
                // relève.Index = (int)readerrel["Index"];
                relève.Index = (float)Convert.ChangeType(readerrel["Index"], typeof(float));
                relève.Relprécédente = (float)Convert.ChangeType(readerrel["Relprécédente"], typeof(float));
                // relève.Relprécédente = (int)readerrel["Relprécédente"];
                relève.Date_releve = (DateTime)readerrel["Date"];
                relève.Consommation = (float)Convert.ChangeType(readerrel["Consommation"], typeof(float));
                // relève.Consommation = (int)readerrel["Consommation"];
                lrelèves.Add(relève);
 
 
 
            }
            return lrelèves;
        }
 
        private void InsertListRelève(List<Relève> listRelève)
        {
            OracleConnection con = new OracleConnection();
            con.ConnectionString = "User Id=sonede;Password=sonede;Data Source=DEV";
            con.Open();
            foreach (Relève relève in listRelève)
            {
                OracleCommand cmd = new OracleCommand();
                string queryStringrel =
                       "INSERT INTO RELEVE (IDRELEVE, REFRELEVE,DATE_RELEVE,INDEX,RELPRECEDENTE,CONSOMMATION) values (:param1,:param2,:param3,:param4,:param5,:param6)";
                cmd.Connection = con;
                cmd.CommandText = queryStringrel;
                cmd.Parameters.Add("param1", OracleType.Int32).Value = GetMaxIdRelève(con) + 1;
                cmd.Parameters.Add("param2", OracleType.Int32).Value = relève.Refrelève;
                cmd.Parameters.Add("param3", OracleType.DateTime).Value = relève.Date_releve;
                cmd.Parameters.Add("param4", OracleType.Float).Value = relève.Index;
                cmd.Parameters.Add("param5", OracleType.Float).Value = relève.Relprécédente;
                cmd.Parameters.Add("param6", OracleType.Float).Value = relève.Consommation;
                cmd.ExecuteNonQuery();
            }
        }
 
        private int GetMaxIdRelève(OracleConnection con)
        {
            OracleCommand cmd = new OracleCommand("select max(idreleve) maxId from releve");
            cmd.Connection = con;
            IDataReader reader = cmd.ExecuteReader();
            if (reader.Read())
                return OutilData.GetIntFromReader(reader, "maxId");
            return 0;
 
        }
        #endregion
Merci de m'aider