| أضيف في: 6-12-1426هـ | ||||
|---|---|---|---|---|
الجزء الثالث من استخدام جمل Sql مع الفيجوال بيسك خامسا : استخدام العامل Like حيث تستخدم لعرض القيم تبدا بحرف او تنتهي بحرف أو تحتوي على حرف مثل عندما تريد عرض أسماء الطلاب التي تحتوي على كلمة محمد مثلا : الشكل العام للجملة يكتب كالتالي : CODE Select * from tab Where col like string حيث تمثل string قيمة النص الذي نريد عرضه وهو كالتالي : أولا : إذا كنت تستخدم قاعدة البيانات أكسس فيكون النص كالتالي : ثانيا : إذا كنت تستخدم قاعدة البيانات Sql server فيكون النص كالتالي : وهنا ملاحظة ان الرموز مع الكائن ado هي المستخدمة مع sql server حتى ولو كنت تستخدم access مثال تطبيقي 10 لعرض جميع حقول الجدول بحيث أن اسم الطالب يحتوي على حرف m اضغط على الزر SQL10 مرتين ثم اكتب الكود التالي : CODE Dim sql As String sql = "Select * From St_inf where st_name like *m*" If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic Set DataGrid1.DataSource = rs1 مثال آخر تطبيقي 11 لعرض جميع الأسماء في قائمة اسم الطالب عندما نكتب أي حرف في مربع النص الذي فوقها اضغط على مربع النص الذي فوق list box مرتين ثم اختار الحث Change لمربع النص ثم اكتب الكود التالي : CODE Dim sql sql = "select * from st_inf where st_name like '%" + txt6.Text + "%'" If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic Set dblist1.RowSource = rs1 dblist1.ListField = "st_name" dblist1.Refresh سادسا : جملة الترتيب Order By حيث تستخدم لترتيب البيانات المعروضة حسب حقل أو أكثر : الشكل العام للجملة يكتب كالتالي : CODE Select * from tab Where condition Order by col1,col2,…[Asc,Desc] حيث يمكنك ترتيب البيانات حسب حقل أو أكثر ترتيبا تصاعديا وهو الوضع الافتراضي للترتيب أو ترتيبا تنازليا حيث يلزمك استخدام البارامتر Desc مثال تطبيقي 12 لعرض جميع الأسماء مرتبة ترتيبا تصاعديا حسب اسم الطالب اضغط على الزر Sql11 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select * from st_inf where st_no>6 order by st_name" If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic Set DataGrid1.DataSource = rs1 الحقول المحسوبة داخل جملة Select حيث يمكنك إجراء عمليات حسابية على البيانات المعروضة وهذه العمليات تكون مفيدة جدا في حالات لا تجد إلا الحقول المحسوبة مثل إيجاد مجموع البيانات داخل حقل أو إيجاد أكبر قيمة ..... الدوال التي يمكن استخدامها في جملة select هي : 1 – دالة المجموع Sum() حيث يمكنك استخدامها لإيجاد مجموع القيم الموجودة في حقل معين مثال تطبيقي 13 مثلا لحساب مجموع القيم الموجودة في الحقل st_no وهو الحقل الرقمي الموجود بالجدول اضغط على الزر Sql12 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select sum(st_no) from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic text1.text = rs1.Fields(0) 2 – دالة أكبر قيمة Max() حيث يمكنك استخدامها لإيجاد أكبر القيم الموجودة في حقل معين مثال تطبيقي 14 مثلا لحساب أكبر القيم الموجودة في الحقل st_no وهو الحقل الرقمي الموجود بالجدول اضغط على الزر Sql13 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select max(st_no) from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic text1.text = rs1.Fields(0) 3 – دالة أقل قيمة Min() حيث يمكنك استخدامها لإيجاد اقل القيم الموجودة في حقل معين مثال تطبيقي 14 مثلا لحساب اقل القيم الموجودة في الحقل st_no وهو الحقل الرقمي الموجود بالجدول اضغط على الزر Sql14 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select min(st_no) from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic text1.text = rs1.Fields(0) 4 - دالة المتوسط Avg() حيث يمكنك استخدامها لإيجاد متوسط القيم الموجودة في حقل معين مثال تطبيقي 15 مثلا لحساب مجموع القيم الموجودة في الحقل st_no وهو الحقل الرقمي الموجود بالجدول اضغط على الزر Sql15 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select avg(st_no) from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic text1.text = rs1.Fields(0) 5 – دالة عدد السجلات Count() حيث يمكنك استخدامها لإيجاد عدد السجلات الموجودة في حقل معين حيث يتم تجاهل القيم الخالية إلا إذا استخدمت علامة * مثال تطبيقي 16 مثلا لحساب عدد السجلات الموجودة في الحقل st_no وهو الحقل الرقمي الموجود بالجدول اضغط على الزر Sql16 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select count(st_no) from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic text1.text = rs1.Fields(0) 6 – يمكنك إجراء عملية حسابية على حقل معين مثل ضرب الحقل رقم الطالب في 10 مثال تطبيقي 17 مثلا لضرب الحقل st_no في العدد 10 اضغط على الزر Sql17 مرتين ثم اكتب الكود التالي : CODE Dim sql sql = "select st_no,st_no*10 as account from st_inf " If rs1.State = adStateOpen Then rs1.Close rs1.Open sql, db, adOpenDynamic, adLockOptimistic set datagrid1.datasource = rs1 نكمل إن شاء الحلقة القادمة |
||||
| الكاتب: LaSer_26 |
|
|
|
|
|
خيارات الدرس : |
||||