使用C#指定的强制转换无效

moe*_*moe 0 c# database asp.net

我有一个具有ID列的数据库,ID列是BIGINT类型.我相信我的问题与转换ID列的正确类型有关,以使插入代码起作用.我试图转换它但无法获得正确的语法.

这是我的代码......

OleDbCommand cmd1 = new OleDbCommand("select ID, Name", con);
cmd1.Connection = con;
con.Open();
int result = (int)cmd1.ExecuteScalar();
sqlcmd.CommandText = "INSERT INTO MyTable(ID, Name) VALUES(@ID, @Name)";
sqlcmd.Parameters.Clear();
sqlcmd.Parameters.Add("@ID", SqlDbType.VarChar).Value = result;
Run Code Online (Sandbox Code Playgroud)

Tim*_*ter 8

用途long:

long result = (long)cmd1.ExecuteScalar();    
Run Code Online (Sandbox Code Playgroud)

范围:从–9,223,372,036,854,775,8089,223,372,036,854,775,807

有符号的64位整数 System.Int64