[英]ORA-01722: invalid number #2
我之前遇到的錯誤是我無法將NULL值插入resources_id中,因此我將resources_id添加到insert值中來避免此問題,但是當我這樣做時會遇到此錯誤:
ORA-01722:C#無效
第56行: cmd.ExecuteNonQuery();
。
為了避免這個問題,我之前做過的事情是我not Null
刪除not Null
並將表中的所有內容都保留為null並可以正常工作,但是這給我帶來了其他麻煩,但我發現很難解決,所以我決定回到主要問題,並向其中添加NOT NULL
。我數據庫中的resources_id。 請幫助解決此問題。
我遇到的另一個問題是無法識別參數中的resources_id
我的密碼:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OracleClient;
using System.Configuration;
using System.IO;
public partial class Lecturer_upload_resources : System.Web.UI.Page
{
string strCon = "Data Source=****;Persist Security Info=True;User ID=****;Password=****;Unicode=false";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGridviewData();
}
}
// Bind Gridview Data
private void BindGridviewData()
{
using (OracleConnection con = new OracleConnection(strCon))
{
using (OracleCommand cmd = new OracleCommand())
{
cmd.CommandText = "select * from resource1";
cmd.Connection = con;
con.Open();
gvDetails.DataSource = cmd.ExecuteReader();
gvDetails.DataBind();
con.Close();
}
}
}
// Save files to Folder and files path in database
protected void btnUpload_Click(object sender, EventArgs e)
{
string filename = Path.GetFileName(fileUpload1.PostedFile.FileName);
Stream str = fileUpload1.PostedFile.InputStream;
BinaryReader br = new BinaryReader(str);
Byte[] size = br.ReadBytes((int)str.Length);
using (OracleConnection con = new OracleConnection(strCon))
{
using (OracleCommand cmd = new OracleCommand())
{
cmd.CommandText = "insert into resource1(Resources_id,FileName,fileType,Filedata) values(:Resources_id,:FileName,:FileType,:FileData)";
cmd.Parameters.AddWithValue(":Resources_id",Resources_id);
cmd.Parameters.AddWithValue(":FileName", filename);
cmd.Parameters.AddWithValue(":FileType", "application/word");
cmd.Parameters.AddWithValue(":FileData", size);
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
BindGridviewData();
}
}
}
嘗試使用這個
cmd.BindByName = true;
在插入塊中或嘗試刪除":"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.