protected void btnSave_OnClick(object sender, EventArgs e)
        {
            byte[] ContentByte = System.Text.Encoding.Default.GetBytes(FCKeditor1.Value);
            Database db = DatabaseFactory.CreateDatabase();
            db.ExecuteNonQuery(CommandType.Text, "insert into poiinfo(poiinfo_id,name,type,subtype,province,city,county,village,street,doornum,postcode,b,l,address,tel,content,memo) values(poiinfo_id.nextval,'" + TxtName.Text + "','" + ddlType.SelectedValue + "','" + ddlSubType.SelectedValue + "','" + ddlProvince.SelectedValue + "','" + ddlCity.SelectedValue + "','" + ddlCounty.SelectedValue + "','" + ddlVillage.SelectedValue + "','" + TxtStreet.Text + "','" + TxtDoorNum.Text + "','" + TxtPostCode.Text + "','" + TxtB.Text + "','" + TxtL.Text + "','" + TxtAddress.Text + "','" + TxtTel.Text + "','"+ContentByte+"','" + TxtMemo.Text + "')");
        }
我怎么把ContentByte得值写入数据库呢,红字的地方应该写什么呢?

解决方案 »

  1.   

    先插入empty_lob,然后根据ID搜出这条记录,然后再修改。具体在samples\generic里面有例子的
    oracle9只能这么做。不知道10、11是不是有变化。
      

  2.   

    能给我举个例子吗?samples\generic里面有例子这是什么意思啊
      

  3.   

    你用hibernate,或者ibatis嘛,有现成的api,上网找个找个demo
    看看
      

  4.   


    E:\oracle\ora92\jdbc\demo\demo.zip,解压后会有这个samples\generic
    里面有jdbc调用oracle对象的例子。
      

  5.   

    根据这一句byte[] ContentByte = System.Text.Encoding.Default.GetBytes(FCKeditor1.Value); 
    似乎你想在js里面直接操作存入BLob对象啊,这个没试过,不会。
      

  6.   

            private void button1_Click(object sender, System.EventArgs e)
            {            string cnnstr = "provider=OraOLEDB.Oracle;data source=yourdb;User Id=xxxx;Password=xxxx;";
                OleDbConnection con = new OleDbConnection(cnnstr);
                try
                {
                    con.Open();
                }
                catch
                { }
                OleDbCommand cmd = new OleDbCommand(cnnstr, con);            cmd.CommandType = CommandType.Text;
                cmd.CommandText = cnnstr;            string txvalue = this.textBox1.Text.Trim();            byte[] expbyte = System.Text.Encoding.Unicode.GetBytes(txvalue);            cmd.CommandText = " insert into xlutest ( hhhh ) values (:hhhh) ";            cmd.Parameters.Add("hhhh", System.Data.OleDb.OleDbType.Binary, expbyte.Length);
                cmd.Parameters[0].Value = expbyte;            try
                {
                    cmd.ExecuteNonQuery();
                    MessageBox.Show("OK");
                }
                catch (System.Exception e1)
                {
                    MessageBox.Show(e1.Message);
                }我是想按照这段代码把FCK中的数据存入到数据库中类型为blob的字段content中,根据这个,我应该怎么改我的代码?高手请指教!
      

  7.   

    怎么没人回答我的问题呢?高手们赶快给我解决一下啊,急!
    除了上面的方法外,如果我把FCK中的内容县存入一个word,然后再把word存入数据库,这两方法的可行度,哪一个比较好呢?
    能帮我把这两种方法都实现一下吗?
    解决此问题,我加分啊!
      

  8.   

    这个好像要转一下类型,先转成字符串类型,中间过渡存储,再转BLOB,写表。具体我也记得不是很清楚。
      

  9.   

    先插入empty_lob,然后根据ID搜出这条记录,然后再修改。