Jump to content

[Resolvido] Inserir Byte[] nulo


brunodopredio

Recommended Posts

Quero inserir um byte no banco, mas pode ser que não exista o arquivo e terei que inserir null.

Se eu colocar SqlByte [] para inserir depois se for nulo o arquivo = SqlByte.null ele não consegue executar o ReadBytes.

Se eu colocar somente arquivo = null;

Na hora do parâmetro do insert no banco cmd.parameters.addwithvalue("@imagem",arquivo), o banco não aceita esse null.

Alguém poderia me ajudar como faria para inserir null no sqlcommand por esse parâmetro?

byte[] Arquivo;

if (projeto.ArquivoDesenho != string.Empty)
{
  //Prepara o arquivo para salvar em BD
  FileStream fs = new FileStream(projeto.ArquivoDesenho, FileMode.Open, FileAccess.Read);
  BinaryReader br = new BinaryReader(fs);
  Arquivo = br.ReadBytes((int)fs.Length);
  br.Close();
  fs.Close();
}
else
{
  // Arquivo = Aqui preciso definir como SQLBYTE.null;
}
Link to comment
Share on other sites

Tens na base de dados a coluna a aceitar null?

qual é a excepção que te dá?

Podes sempre experimentar colocar no parâmetro que vai para a base de dados DBNull.Value em vez de afectares a propriedade Arquivo.

Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Link to comment
Share on other sites

Tens na base de dados a coluna a aceitar null?

qual é a excepção que te dá?

Podes sempre experimentar colocar no parâmetro que vai para a base de dados DBNull.Value em vez de afectares a propriedade Arquivo.

Aceita nulo sim.

Ele dá o erro

the parameterezed expects @Arquivo , which was not supplied quando coloco arquivo = null.

como colocar dbnull.value? por que ele pode ter o arquivo ou ser nulo não pode ser somente nulo.

se eu colocar arquivo = dbnull.value ele diz que não pode converter implicitamente system.dbnull em byte[]

Link to comment
Share on other sites

se eu colocar arquivo = dbnull.value ele diz que não pode converter implicitamente system.dbnull em byte[]

Já estava a ver que ias fazer isso.

Lê bem o que eu escrevi:

Podes sempre experimentar colocar no parâmetro que vai para a base de dados DBNull.Value em vez de afectares a propriedade Arquivo.

Não é o Arquivo que afectas, é o parâmetro que estás a usar. O @Arquivo

Edited by bruno1234

Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.