Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alexandre Carmo

Problemas ao armazenar dados

Recommended Posts

Boa tarde

 

Pessoal tenho um código que armazena um binário no banco access, esta funcionando normalmente, esse é o código:

// Create SQL command containing ? parameter for BLOB.
			cmdInsert = new OleDbCommand("INSERT INTO enroll(template) values(?) ", _connection);
			// Create parameter for ? contained in the SQL statement.
			System.Byte [] temp = new System.Byte[tpt._size + 1];
			System.Array.Copy(tpt._tpt, 0, temp, 0, tpt._size);

			dbParamInsert = new OleDbParameter("@template", OleDbType.VarBinary, tpt._size, 
							ParameterDirection.Input, false, 0, 0,"ID", 
							DataRowVersion.Current, temp);
			cmdInsert.Parameters.Add(dbParamInsert);

			//execute query
			if(_connection.State == ConnectionState.Open)
				cmdInsert.ExecuteNonQuery();

Tentei fazer o mesmo para armazenar em SQLServer 2012, o programa não apresenta erro mas não armazena nada, olha como fiz:

// Create SQL command containing ? parameter for BLOB.
            cmdInsert = new SqlCommand("INSERT INTO enroll_visitantes(template) values(?) ", _connection);
			// Create parameter for ? contained in the SQL statement.
			System.Byte [] temp = new System.Byte[tpt._size + 1];
			System.Array.Copy(tpt._tpt, 0, temp, 0, tpt._size);


            dbParamInsert = new SqlParameter("@template", SqlDbType.VarBinary, tpt._size, 
							ParameterDirection.Input, false, 0, 0,"ID", 
							DataRowVersion.Current, temp);
			cmdInsert.Parameters.Add(dbParamInsert);

			//execute query
			if(_connection.State == ConnectionState.Open)
				cmdInsert.ExecuteNonQuery();

No access o campo é Objeto OLE

No SQLServer é campo é varbinary(max)

 

POrque não armazena nada e não mostra erro?

Fiz alguns teste com campo de tipo diferente jogando valor direto e rolou, só esse método com o sql server que não rolou. Alguém teria alguma solução?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.