我将字符串转换为十进制是一个问题,这是“,”分开。我在文本框中写了一些像23.4毫米的值。之后,我点击按钮,希望将值转换为十进制,然后将其插入到我的访问数据库中。
对于整个过程,我使用以下代码:
int auftragsnummer, rolle, maschinenfuehrer, prueferin, maschine ,werk; double mw_1, mw_2, mw_3;
Int32.TryParse(mf_id.Text, out maschinenfuehrer);
Int32.TryParse(lab_id.Text, out prueferin);
Int32.TryParse(masch.Text, out maschine);
Int32.TryParse(kund_id.Text, out werk);
Int32.TryParse(auftrag.Text, out auftragsnummer);
Int32.TryParse(Rolle.Text, out rolle);
Double.TryParse(textBox2.Text, NumberStyles.Any, CultureInfo.CurrentCulture, out mw_1);
Double.TryParse(textBox1.Text, NumberStyles.Any, CultureInfo.CurrentCulture, out mw_2);
Double.TryParse(textBox3.Text, NumberStyles.Any, CultureInfo.InstalledUICulture, out mw_3);
con.Open();
OleDbCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO GLri (Auftragsnummer, Rolle, Mf, Prueferin, Maschine, Werk, Messwerteins, Messwertzwei, Messwertdrei ) values(" + auftragsnummer + "," + rolle + "," + maschinenfuehrer + "," + prueferin + "," + maschine + "," + werk + "," + mw_1 + "," + mw_2 + "," + mw_3 + ")";
cmd.ExecuteNonQuery();
con.Close();
为了插入我的访问数据库,我使用INSERT INTO指令。但是,当我写这个版本23,2“,”分开并想要插入它时,我得到一个错误,说我的数据库表没有足够的列。当我用点分隔值时,它将值插入我的数据库而不是十进制值。例如:我在文本框中写入22.4,程序将224插入到我的数据库表中。
那些必须以十进制表示的列已经声明为十进制。
有人能帮我解决这个问题吗?我无法发现我的错误。
顺便说一下,这是否正确使用sql-command?
非常感谢!