使用JDBC从SQLServer获取映像到Android

时间:2017-07-28 15:31:25

标签: java android sql sql-server jdbc

我试图从sql server获取一个图像并在我的android应用程序中使用它。用于创建表和将图像存储在数据库表中的代码是:

create table Imagee (ID int not null,Img VARBINARY(max) not null)

insert into Imagee (ID, Img) 
SELECT 1, BulkColumn 
FROM Openrowset( Bulk 'C:\Razvan\PozeDB\hawai.png', Single_Blob) as iamge

我目前正在尝试使用的代码,但它不起作用,我没有收到任何错误:

String query = "select * from Imagee ";
Statement stmt = con.createStatement();
final ResultSet rs = stmt.executeQuery(query);

if (rs.next()) {

    final String imagine;
    imagine = rs.getString("Img");

    byte[] decodeString = Base64.decode(imagine, Base64.DEFAULT);
    final Bitmap decodebitmap = BitmapFactory.decodeByteArray(decodeString, 0, decodeString.length);

    getActivity().runOnUiThread(new Runnable() {
        @Override
        public void run() {
            try{
                //Here "img" is the ImageView
                img.setImageBitmap(decodebitmap);
            }catch(Exception e){
                Log.e("Eceptie",e.getMessage());
            }

        }
    });
}

此代码由try catch语句和“doInBackground()”方法包围。正确建立了与服务器的连接。我可以获得Id,但不能获得图像。

请帮忙。谢谢!

0 个答案:

没有答案