سلام برنامه ای نوشتم به این صورت که رکوردها در دیتابس به صورت زیر هستند
CREATE TABLE [dbo].[tbl1] (
[heyid] INT IDENTITY (1, 1) NOT NULL,
[heynamber] INT NOT NULL,
[heynamberD] NVARCHAR (50) NOT NULL,
[heydate] DATETIME NOT NULL,
[heymelli] NVARCHAR (10) NOT NULL,
[heytype] NVARCHAR (200) NOT NULL,
[heyimg] VARBINARY (MAX) NOT NULL,
[heyok] BIT DEFAULT ((0)) NOT NULL,
[heyoffice] NVARCHAR (50) NOT NULL,
[heyprice] NVARCHAR (50) NOT NULL,
[heyejra] DATETIME DEFAULT (NULL) NULL,
PRIMARY KEY CLUSTERED ([heyid] ASC)
);
وقتی جستجو میزنم به صورت پروسیجر داده ها با عکس سرعتشون کم بود ولی اومدم و دستور را بدون عکس زدم و سرعتش با 500 رکورد خوبه فقط وقتی به این صورت عکس رو جدا گونه از بانک میخونم سرعت یکم کند شده و میترسم کند تر هم بشه .پیشنهاد شما چیه؟
CREATE PROCEDURE [dbo].[Pshowimg]
@heyid int
AS
SELECT heyid, heyimg from tbl1 where heyid=@heyid
RETURN 0
کد C# خوندن عکس هم
SqlConnection connect2 = new SqlConnection(ConfigurationManager.ConnectionStrin gs["conect"].ToString());
connect2.Open();
SqlCommand cmd2 = new SqlCommand("Pshowimg", connect2);
cmd2.CommandType = CommandType.StoredProcedure;
cmd2.Parameters.Add("@heyid", SqlDbType.NVarChar).Value =
this.dataGridView1.Rows[rowIndex].Cells["heyid"].Value;
SqlDataReader dread2 = cmd2.ExecuteReader();
if (dread2.Read())
{
Image img;
byte[] imageByte = (byte[])dread2["heyimg"];
MemoryStream ms = new MemoryStream(imageByte);
img = Image.FromStream(ms);
bmp = new Bitmap(img);
}
dread2.Close();
connect2.Close();