شما در این کوئری
string.Format("select userid from userTBL where username='{0}'",lblstate.Text );
قصد دارید که با توجه به username اطلاعاتی از فیلد userid رو انتخاب کنید اما فیلد username رو در جدولتون تعریف نکردین بنابراین یک فیلدی به نام username در جدول userTBL ایجاد کنید.
و به همین ترتیب در جدول imgTBL فیلدی به نام image با نوع داده ای مورد نظرتون تعریف کنید ببینید به پاسختون میرسید یا خیر؟
و اگر شما میخواید بین دو جدول ارتباط برقرار کنید بیشتر توضیح بدین و یا حالت کلی کاری که این کوئریها باید براتون انجام بدن رو بگید تا در صورت توانایی کوئری قرار بدم.
شما میتونید از datatable و sqldataadapter استفاده نکنید
لطفا این کد رو تست کنید.
string cn = "Data Source=DANI-PC;Initial Catalog=pic_gallery;Integrated Security=True";
SqlConnection c = new SqlConnection(cn);
SqlCommand cmd = new SqlCommand(string.Format("select Top 1 userid from userTBL where username='{0}'", lblstate.Text), c);
c.Open();
int userid = (int)cmd.ExecuteScalar();
if (FileUpload1.HasFile)
{
string filename = FileUpload1.FileName;
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/user-image/" + filename));
string query = string.Format("insert into imgTBL (userid, image) values({0}, '{1}')", userid, "~/user-image/" + filename);
SqlCommand com = new SqlCommand(query, c);
com.ExecuteNonQuery();
}
c.Close();
متد ExecuteScalar:
متد ExecuteScalar تنها با سلول [0][0] جدول کار داره و مقادیر اون رو میخونه.
مثال: یک select انجام شده و تعدادی رکورد برگشت داده شدن.
متد ExecuteScalar تنها با اولین خانه یعنی id شماره 1 کار داره و مقادیر دیگر رو نادیده میگیره.
شما دقیقا قصد دارید که یک مقدار رو برگشت بدین بنابراین این یک مقدار در اولین سلول قرار خواهد گرفت و کافی است به وسیله متد ExecuteScalar مقدار رو دریافت کنید.
نکته: احتمال داره اولین خانه یا سلول برابر با نوع های داده ای دیگه باشه و یا اینکه هنگام select هیچ مقداری در خانه اول نباشه (null باشه) بنابراین خیلی مهمه که مدیریت خوبی رو این متد انجام بشه. اما طبق توضیحات شما حتما مقداری از نوع عددی در برنامه شما برگشت داده خواهد شد.
SQL:
http://www.w3schools.com/sql/
کتاب:
http://dl.irpdf.com/ebooks/Part27/www.irpdf.com(8339).pdf
موفق باشید.