PDA

View Full Version : خواندن کلید اصلی از جدول



raziyehbazargan
شنبه 07 مرداد 1391, 11:55 صبح
سلام دوستان

ممنون میشم راهنمایی کنید.
من دو تا جدول دارم : در جدول 1 چند تا فیلد دارم که یکیش کلید اصلی هست و در جدول 2 کلید اصلی جدول 1 رو به عنوان کلید خارجی دارم...

میخوام تو جدول 2 درج کنم و برای این کار کلاس در سی شارپ نوشتم اما بر ای یکی از فیلدها که همون کلید جدول 1 هست نیاز دارم که بتونم کلید جدول 1 رو بخونم و در جدول 2 درج کنم نمیدونم چطور میتونم کلید رو از جدولم بخونم ؟؟

سوال دومم هم اینه که چطور میشه که یه تکست باک فقط جروف بزرگ انگلیسی رو بپذیره>>؟؟ یعنی اکه کاربر حروف رو بصورت کوچیک وارد میکنه اون رو به بزرگ تبدیل کنه و نشون بده؟؟

arash69
شنبه 07 مرداد 1391, 12:52 عصر
سلام
در مورد سوال اولتون، خب کلید جدول یک با توجه به چه فیلد و معیاری باید از جدول یک خونده بشه؟ اگه مثلا با توجه به فیلد یک و اینکه سطری که مقدار فیلد یکش برابر تکست باکس یک باشه؛کلید اصلی اون سطر درج بشه در اینصورت:
INSERT INTO TABLE2 VALUES(SELECT FIELD2 FROM TABLE1 WHERE FIELD1=@txtBox1)
که در دستور بالا FIELD2 همون کلید اصلی جدول یک در نظر گرفته شده و txtBox1@ هم به عنوان پارامتر دستور و مقداریه که با توجه به اون بایستی کلید اصلی از جدول یک انتخاب بشه.
برای اضافه کردن پارامتر به دستور نیز، این چنین می توان عمل کرد:
command1.Parameters.Add("@txtBox1",SqlDbType.NVarChar);
command1.Parameters["@txtBox1"].Value = textBox1.Text;

arash69
شنبه 07 مرداد 1391, 13:00 عصر
و در مورد سوال دومتون هم:
برای اینکه اگه حروف به صورت کوچیک تایپ شدن، به صورت بزرگ نمایش داده بشن؛ بایستی مقدار پراپرتی CharacterCasing مربوط به تکست باکس مورد نظر رو به Upper تغییر داد.

raziyehbazargan
یک شنبه 08 مرداد 1391, 08:49 صبح
و در مورد سوال دومتون هم:
برای اینکه اگه حروف به صورت کوچیک تایپ شدن، به صورت بزرگ نمایش داده بشن؛ بایستی مقدار پراپرتی CharacterCasing مربوط به تکست باکس مورد نظر رو به Upper تغییر داد.

ممنونم از راهنماییتون اما من از MaskedTextBox استفاده کردم که این پروپرتی رو نداره...برای MaskedTextBox چطور میتونم این کارو انجام بدم؟؟؟

nilmil_nil
یک شنبه 08 مرداد 1391, 10:51 صبح
تو رویداید Change تکست باکس از این کد استفاده کن


private void textBox3_TextChanged(object sender, EventArgs e)
{
textBox3.Text = textBox3.Text.ToUpper();
}

arash69
یک شنبه 08 مرداد 1391, 13:09 عصر
ممنونم از راهنماییتون اما من از MaskedTextBox استفاده کردم که این پروپرتی رو نداره...برای MaskedTextBox چطور میتونم این کارو انجام بدم؟؟؟

توی رویداد KeyPress مربوط به MaskedTextBox مورد نظر اگه اینطوری نوشته بشه؛ حروفی که به صورت کوچیک تایپ شدن، به صورت بزرگ نمایش داده میشن.
private void maskedTextBox2_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar >= (Char)97 && e.KeyChar <= (Char)132)
{
e.Handled = true;
maskedTextBox2.Text += (Char)((int)e.KeyChar - 32);
}
else
{
e.Handled = true;
maskedTextBox2.Text += (Char)(int)e.KeyChar;
}

}