我的代码是这样写的:String ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MyMDB.mdb";
//创建一个OleDbConnection对象
System.Data.OleDb.OleDbConnection OleDBConn1 = new System.Data.OleDb.OleDbConnection(ConnString);
string sqlYuju; sqlYuju = "INSERT INTO Data VALUES(" +
"'" + textBox1.Text + "'," +
"'" + textBox2.Text + "'," +
"'" + textBox3.Text + "')";
//创建一个oledbcommand对象
OleDbCommand myCommand = new OleDbCommand(sqlYuju, OleDBConn1);
//打开连接
OleDBConn1.Open();
OleDbDataReader myReader = myCommand.ExecuteReader(); myReader.Read();
myReader.Close();
OleDBConn1.Close();我添加数据的时候数据为什么不是一个接一个的来呢?而是乱插入的。像是随机插入一样。
以前看C++的时候记得有光标控制的,但是我不知道C#要怎么做,希望高手帮忙看看,顺便把代码加上,我是刚学的。
//创建一个OleDbConnection对象
System.Data.OleDb.OleDbConnection OleDBConn1 = new System.Data.OleDb.OleDbConnection(ConnString);
string sqlYuju; sqlYuju = "INSERT INTO Data VALUES(" +
"'" + textBox1.Text + "'," +
"'" + textBox2.Text + "'," +
"'" + textBox3.Text + "')";
//创建一个oledbcommand对象
OleDbCommand myCommand = new OleDbCommand(sqlYuju, OleDBConn1);
//打开连接
OleDBConn1.Open();
OleDbDataReader myReader = myCommand.ExecuteReader(); myReader.Read();
myReader.Close();
OleDBConn1.Close();我添加数据的时候数据为什么不是一个接一个的来呢?而是乱插入的。像是随机插入一样。
以前看C++的时候记得有光标控制的,但是我不知道C#要怎么做,希望高手帮忙看看,顺便把代码加上,我是刚学的。
用程序加一句order by
--->
myCommand.ExecuteNonQuery()
数据库插入是顺序的,也可能用户设置了自动增加的阶越,那么就是不顺序的。
另外在你插入数据库的时候有可能别人也在操作。
就算没,ACCESS也会给你按某行进行自动排列要想按添加的顺序显示,最好加个自动增长的主键就行了
小红 20 清华
小黄 21 复旦
小白 21 北大我插入一段数据怎么变成
姓名 年龄 学校
小红 20 清华
小青 22 清华
小黄 21 复旦
小白 21 北大
为什么小青会插到那里呢?-------------------------------------------------------
因为你的排序列不是年龄吧
再说这个也没关系,取出的时候order by 年龄不就ok了