追加する行が 30 行未満の場合、私のコードはうまく機能します。しかし、それ以上は扱えません。どうすればこれを克服できますか?
次のエラーが表示されます: Unspecified error
30 未満を追加しようとすると、すべての行が追加されます。30を超えて追加しようとすると、何も追加されず、行数のエラーが発生します。
コードは次のとおりです。
for (int i = 0; i < st1.Length; i++)
{
UpdateDataBase(st1[i]);
}
private void UpdateDataBase(char letter)
{
letter = char.ToUpper(letter);
int serialPro = 0;
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" +
"Data Source=C:\\Projects_2012\\Project_Noam\\Access\\myProject.accdb";
OleDbConnection connection = new OleDbConnection(connectionString);
string sql = "SELECT tblProInfo.proInfoSerialNum FROM tblProInfo ";
OleDbCommand command = new OleDbCommand(sql, connection);
try
{
connection.Open();
OleDbDataReader reader = command.ExecuteReader();
//get the last!
while (reader.Read())
serialPro = reader.GetInt32(reader.Depth);
sql = "INSERT INTO tblOrderAA (orderAASerialPro, orderAACodon1) "
+ " values (?, ?)";
OleDbCommand command2 = new OleDbCommand(sql, connection);
command2.CommandType = CommandType.Text;
command2.Parameters.AddWithValue("orderAASerialPro", serialPro);
command2.Parameters.AddWithValue("orderAACodon1", letter);
command2.ExecuteNonQuery();
}
catch (Exception e)
{
MessageBox.Show("אירעה שגיאה ב: \n" + e.Message);
this.Close();
}
}`
編集: プライベート void UpdateDataBase(char 文字) { 文字 = char.ToUpper(文字); int serialPro = 0; string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "データソース=C:\Projects_2012\Project_Noam\Access\myProject.accdb";
try
{
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
string sql = "SELECT tblProInfo.proInfoSerialNum FROM tblProInfo ";
using (OleDbCommand command = new OleDbCommand(sql, connection))
using (OleDbDataReader reader = command.ExecuteReader())
{
//get the last!
while (reader.Read())
serialPro = reader.GetInt32(0);
}
sql = "INSERT INTO tblOrderAA (orderAASerialPro, orderAACodon1) "
+ " values (?, ?)";
using (OleDbCommand command2 = new OleDbCommand(sql, connection))
{
command2.CommandType = CommandType.Text;
command2.Parameters.AddWithValue("orderAASerialPro", serialPro);
command2.Parameters.AddWithValue("orderAACodon1", letter);
command2.ExecuteNonQuery();
}
}
}
catch (Exception e)
{
MessageBox.Show("אירעה שגיאה ב: \n" + e.Message);
}
}
enter code here