Trang 1 / 3 123 LastLast
Hiển thị kết quả từ 1 đến 10 / 26
  1. #1
    Tham gia
    20-03-2008
    Bài viết
    30
    Like
    0
    Thanked 0 Times in 0 Posts

    Trong C#: đưa file ảnh vào CSDL?

    Tôi dùng CSDL SQL2000, các bạn cho mình hỏi nếu dùng trường lưu file ảnh .jpg thì dùng trường đó bằng kiểu gì? Xin cảm ơn!
    Quote Quote

  2. #2
    Tham gia
    30-10-2007
    Location
    Hà Nội
    Bài viết
    382
    Like
    0
    Thanked 14 Times in 14 Posts

    ..Chào bạn!!!!

    CSDL không thể lưu trực tiếp được các đối tượng thực thể như là Aduio, Image,... Nếu bạn muốn dùng CSDL để lưu trữ ảnh thì bạn chỉ có thể dùng để lưu trữ đường dẫn tới file ảnh hay bất cứ file nào khác mà bạn muốn. Ví dụ nếu bạn muốn tạo một có sở dữ liệu lưu một trang ảnh chẳng hạn, bạn có thể thành lập một CSDL có một Table với các trường như: ImageID, URL, height, width,.. Để miêu tả đối tượng đó.
    Chúc bạn thành công!!!

  3. #3
    Tham gia
    17-05-2006
    Bài viết
    127
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi serivn View Post
    CSDL không thể lưu trực tiếp được các đối tượng thực thể như là Aduio, Image,... Nếu bạn muốn dùng CSDL để lưu trữ ảnh thì bạn chỉ có thể dùng để lưu trữ đường dẫn tới file ảnh hay bất cứ file nào khác mà bạn muốn. Ví dụ nếu bạn muốn tạo một có sở dữ liệu lưu một trang ảnh chẳng hạn, bạn có thể thành lập một CSDL có một Table với các trường như: ImageID, URL, height, width,.. Để miêu tả đối tượng đó.
    Chúc bạn thành công!!!
    Luyên thuyên
    Ảnh có thể đưa thẳng vào cơ sở dữ liệu, có thể dùng kiểu image hoặc kiểu nhị phân. vấn đề là khi lấy ra

  4. #4
    Tham gia
    30-10-2007
    Location
    Hà Nội
    Bài viết
    382
    Like
    0
    Thanked 14 Times in 14 Posts

    Thông tin

    Quote Được gửi bởi vmhuong View Post
    Luyên thuyên
    Ảnh có thể đưa thẳng vào cơ sở dữ liệu, có thể dùng kiểu image hoặc kiểu nhị phân. vấn đề là khi lấy ra
    Hì!!!
    Cái này cũng có thể, mình chưa có dùng kiểu đó bao giờ nên đã nói sai rùi. Tiện thể bạn có thể đưa ra giải pháp cho câu hỏi của bạn ấy luôn đi!! Mình cũng muốn được học hỏi thêm.
    Rất mong được bạn giúp đỡ nhiều!!!

  5. #5
    Tham gia
    17-02-2009
    Bài viết
    2
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi serivn View Post
    Hì!!!
    Cái này cũng có thể, mình chưa có dùng kiểu đó bao giờ nên đã nói sai rùi. Tiện thể bạn có thể đưa ra giải pháp cho câu hỏi của bạn ấy luôn đi!! Mình cũng muốn được học hỏi thêm.
    Rất mong được bạn giúp đỡ nhiều!!!
    SQLserver lưu dưới dạng binary, C# dùng hàm xử lý ảnh (image) đọc ra chuỗi nhị phân -> insert vào database. Lâu rồi ko làm nên ko nhớ lắm, nhưng đã từng làm rồi. Nhưng dùng cách này ko phổ biến lắm.

  6. #6
    Tham gia
    30-10-2007
    Location
    Hà Nội
    Bài viết
    382
    Like
    0
    Thanked 14 Times in 14 Posts

    Thông tin Hì!!

    Cảm ơn các bạn nhiều!!
    Mình đã tìm rồi, có khá nhiều thuật toán hay về cái này. Bởi trước đây mình ko nghĩ là có cái nè nên cũng lười tìm hiểu luôn, ai dè mình sai quá.
    Một lần nữa cảm ơn rất nhiều, mình lại có một bài học bổ ích!!1

  7. #7
    Tham gia
    20-03-2008
    Bài viết
    30
    Like
    0
    Thanked 0 Times in 0 Posts
    Bạn nói đúng, mình cũng có hỏi sơ qua thì lưu trong CSDL là một kiểu nhị phân. Chuyển từ fie ảnh đó vào nhị phân sau đó trích lại. Nhưng vấn đề là cụ thể nó như thế nào thì cũng chưa rõ đươc. Mong các bạn có kinh nghiệm truyền đạt. Xin cảm ơn các bạn đã quan tâm.

  8. #8
    Tham gia
    30-06-2008
    Bài viết
    438
    Like
    0
    Thanked 8 Times in 8 Posts
    cnn = new SqlConnection(connString);
    cnn.Open();
    string strSQL = "Insert Into Products(ProductName,Image,ImgLength,ImgType) values (@ProductName,@Image,@ImgLength,@ImgType)";
    cmd = new SqlCommand(strSQL, cnn);

    param = new SqlParameter("@ProductName", SqlDbType.VarChar);
    param.Value = txtProductName.Text;
    cmd.Parameters.Add(param);

    param = new SqlParameter("@Image", SqlDbType.Image);
    param.Value = content;
    cmd.Parameters.Add(param);

    param = new SqlParameter("@ImgLength", SqlDbType.BigInt);
    param.Value = length;
    cmd.Parameters.Add(param);

    param = new SqlParameter("@ImgType", SqlDbType.VarChar);
    param.Value = type;
    cmd.Parameters.Add(param);

    cmd.ExecuteNonQuery();
    cnn.Close();

  9. #9
    Tham gia
    18-11-2004
    Bài viết
    111
    Like
    0
    Thanked 0 Times in 0 Posts
    uhm, khi bạn muốn lưu ảnh vào trong CSDL thì đừng nên lưu file trực tiếp mà bạn hãy lưu đườn dẫn file lên ấy. Trong vd của bạn sinhviencongnghe mình sửa lại là

    .....
    param = new SqlParameter("@Image", SqlDbType.Varchar);
    param.value = UploadToServer(txtFilename.text);
    cmd.parameters.add(param);

    Hàm UploadToServer bạn có thể viết code để upload file lên sever và trả lại string là server.mappath đến file mà bạn vừa up lên

  10. #10
    Tham gia
    30-06-2008
    Bài viết
    438
    Like
    0
    Thanked 8 Times in 8 Posts
    Hi`hi`
    Người ta hỏi mình lưu ảnh vào CSDL mà, đâu hỏi giái pháp nào hợp lý hơn đâu.
    Mình chỉ trả lời đúng những gì người ấy hỏi do nhu cầu mỗi người khác nhau

Trang 1 / 3 123 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •