كمك!!!!!!!!
اين كد به زبان vbرا چطوري به #Cتبديل كنم براي نوشتناز بانك اطلاعاتي به ان احتياج دارم
Label1.Text = cmd.ExecuteScalar
با access كار مي كنم
كمك!!!!!!!!
اين كد به زبان vbرا چطوري به #Cتبديل كنم براي نوشتناز بانك اطلاعاتي به ان احتياج دارم
Label1.Text = cmd.ExecuteScalar
با access كار مي كنم
Last edited by khoosh; 23-04-2007 at 07:50.
لطفا هر چه زودتر يكي جواب بده
Last edited by khoosh; 23-04-2007 at 07:52.
سلام
این کد اصلاَ نیاز به تبدیل ندارد! فقط یک نفطه ویرگول در انتهایش کم دارد تا #c خالص شود!
متشكرم از جوابت ولي با نقطه وبا پرانتز وبدون پرانتز و... خطا ميده..
اين كديه كه ميخوام از ديتا بيسم يه چيزي نشون بده
OleDbConnection con = newOleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;DATA Source=f:/myproj/prjdb.mdb;");
con.Open();
OleDbCommand cmd = newOleDbCommand("SELECT client.name, client.family FROM (client INNER JOIN process ON client.id = process.cid) WHERE (process.username = 'u.[text]')", con);
string strsql = "SELECT client.name, client.family FROM (client INNER JOIN process ON client.id = process.cid) WHERE (process.username = 'u.[text]')";
OleDbDataAdapter da = newOleDbDataAdapter(strsql,con);
Label1.Text = cmd.ExecuteScalar();
con.Close();
[quote=khoosh;1030189]متشكرم از جوابت ولي با نقطه وبا پرانتز وبدون پرانتز و... خطا ميده..
اين كديه كه ميخوام از ديتا بيسم يه چيزي نشون بده
OleDbConnection con = newOleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;DATA Source=f:/myproj/prjdb.mdb;");
con.Open();
OleDbCommand cmd = newOleDbCommand("SELECT client.name, client.family FROM (client INNER JOIN process ON client.id = process.cid) WHERE (process.username = 'u.[text]')", con);
string strsql = "SELECT client.name, client.family FROM (client INNER JOIN process ON client.id = process.cid) WHERE (process.username = 'u.[text]')";
OleDbDataAdapter da = newOleDbDataAdapter(strsql,con);
Label1.Text = cmd.ExecuteScalar();
con.Close();
سلام
من تمام خط ها را نخواندم ولی بعید میدانم در VB8 هم درست کار کنند! اگر #C خطا میدهد حتماَ VB هم خطا میدهد.
در دستور SELECT شما دو مقدار برگردانده شده (نام و فامیل) در حالی که دستور ExecuteScalar برای بازگردادن یک تک مقدار است، شما یا نام یا فامیل را حذف کنید و یا اگر به هر دو نیاز دارید آنها را در دستور Sql با هم جمع کنید، تا جواب جدول یک تک مقدار واحد شود، تا بتوان آن را در یک Label نشان داد (واضح است که نمیتوان یک جدول را در یک Label نشان داد.
بجز این بحث، فکرکنم خطایی که شما با آن مواجه شدید، ناتوانی کامپایلر #C در تبدیل Object به String بوده.
در نتیجه مجبور بگویم حق با شماست و کد تبدیل به #C اینچنین میشود.
;Label1.Text = (string)cmd.ExecuteScalar
البته باز هم توجه کنید، که اگر مقادیر خالی یا همان Null در بانک ثبت شده باشند این خط دچار خطا میشود، چون در این مورد فریم وروک کمی خنگ بازی در نمی آورد و نمیتواند به طور خودکار Null را به String تبدیل کنید!
در نتیجه در کدهایتان این حالت را هم لحاظ کنید و آن را تشخصی دهید و یک رشته خالی برگردانید.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)