我用的是NpgsqlDbType.Bit但是还是提示说转换的类型无效
解决方案 »
- 关于表存储空间的讨论
- 高手请进,关于mysql的复杂统计汇总
- postgresql建库建表的问题
- 数据库还原的问题.我在现有的数据库上做了一个误操作,请问能撤消吗?
- 急!!!.sql文件怎么样用命令的格式导入MySQL啊!谢谢
- 在linux下mysql数据库里面已有记录,现要改变数据库存放位置,应该怎么改??
- RPM安装MySQL4.1是的错误信息?请帮忙解决,谢谢!
- >>>>>>>>>*.sql文件有什么用啊?<<<<<<<<
- 高手们,帮帮小妹!
- The server encountered an internal error
- Lock wait timeout exceeded; try restarting transaction
- php中对mysql数据如何交叉查询?
看下边的例子:
using System;
using Npgsql;
using NpgsqlTypes;
using System.Drawing;
using System.IO;//metod whos take picture oid from databasepublic int takeOID(int id){ //it's a metod whos connect to database and return picture oid
BazySQL pir = new BazySQL(Login.DaneUzera[8]);
string pytanko = String.Format("select rysunek from k_rysunki where idtowaru = " + idtowaru.ToString());
string[] wartosci = pir.OddajSelectArray(pytanko);
int liczba = int.Parse(wartosci[0].ToString());
return liczba;}//take a picture from database and convert to Image typepublic Image pobierzRysunek(int idtowaru){ NpgsqlConnection Polacz = new NpgsqlConnection();
Polacz.ConnectionString = Login.DaneUzera[8].ToString(); //its metod whos return connection string
Polacz.Open();
NpgsqlTransaction t = Polacz.BeginTransaction();
LargeObjectManager lbm = new LargeObjectManager(Polacz);
LargeObject lo = lbm.Open(takeOID(idtowaru),LargeObjectManager.READWRITE); //take picture oid from metod takeOID
byte[] buf = new byte[lo.Size()];
buf = lo.Read(lo.Size());
MemoryStream ms = new MemoryStream();
ms.Write(buf,0,lo.Size());
lo.Close();
t.Commit();
Polacz.Close();
Polacz.Dispose();
Image zdjecie = Image.FromStream(ms);
return zdjecie;}//next I just use this metodpictureBox1.Image = Image pobierzRysunek(1);
怎么能用bit类型呢,那就是最多一个字节来描述。image,应该使用oid。那什么时候用bit??