Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

सी # का उपयोग कर SQL सर्वर में DICOM फ़ाइलों को कैसे स्टोर और पुनर्प्राप्त करें

घोषित करें byte[] objData बाहर और ब्लॉक का उपयोग करने से पहले और आकार . सेट करने का प्रयास करें बाइट सरणी का:

byte []objData=null;
using (MemoryStream memStream = new MemoryStream())
 {
    using (FileStream fileStream = File.Open(txtDICOMFilePath.Text, FileMode.Open))
    {
         fileStream.CopyTo(memStream);
    }
    int intL = Convert.ToInt32(memStream.Length);
    objData = new byte[intL];
    memStream.Read(objData,0,objData.Length);
 }

SqlCom.Parameters.Add("@ImageData",SqlDb.Image,objData.Length).Value=objData;

संपादित करें:ImagesStore से डेटा पढ़ने के लिए

string qry = "select * From ImagesStore";

using(SqlConnection Cn=new SqlConnect(CnStr))
{
  using(SqlCommand SqlCom = new SqlCommand(qry, CN))
  {
    Cn.Open();
    using(SqlDataReader dr=SqlCom.ExecuteReader())
    {
      while(dr.Read())
      {
          string path="x:\\folder\\" + dr[0] + ".png";
          byte []bytes=(byte[])dr[1];
          System.IO.File.WriteAllBytes(path,bytes);
       }
    }
  }
}

वैकल्पिक रूप से आप DataAdapter/DataTable (OP में कोड) का उपयोग कर सकते हैं

if (dt.Rows.Count > 0)
     {
        foreach(DataRow row in dt.Rows)
         {
          string path="x:\\folder\\" + row[0] + ".png";
          byte []bytes=(byte[])row[1];
          System.IO.File.WriteAllBytes(path,bytes);
         }
     }



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर 2012 में query_post_execution_showplan विस्तारित ईवेंट का प्रभाव

  2. एकाधिक तालिकाओं से एकाधिक पंक्तियों को संयोजित करें

  3. SQL सर्वर इस कोड को अनियमित क्यों नहीं मानता?

  4. हाइफ़न बनाम डैश:डैश को हाइफ़न से बदलें

  5. SQL सर्वर पर जब मैं किसी मामले के भीतर एकाधिक कॉलम कैसे चुन सकता हूं?