|
مقدمه : كاربرد روز افزون بانك اطلاعاتي SQL مرا بر آن داشت تا مطالبي هر چند كوتاه جهت خوانندگان محترم سايت تهيه نماييم. قبلا از هر چيز لازم به ذكر است كه مطالب ذيل در حد آشنايي بوده و دوستا براي دستيابي به تكنيكهاي بيشتر مي بايست از كتابهاي مرجع و Book online خود SQL Server استفاده نمايند. در مطالب زير كه سلسله وار مباحث SQL Server را مرور خواهيم كرد , سعي شده تا ابتدا مطالب مقدماتي جهت آشنايي آورده شود و سپس اگر عمري باقي بود به مطالب پيشرفته آن بپردازيم. همچنين براي يادآوري خدمت دوستان ابتدا مرور سريعي بر چند دستور SQL كه كاربرد بيشتري دارند خواهيم پرداخت و سپس به SQL Server و مطالب آن خواهيم پرداخت . مطالب زير اكثرا از كتاب Microsoft SQL Server 7.0 Database Implementation Training انتخاب گرديده است . اين كتاب به همراه CDآموزش آن به عنوان يك مرجع براي امتحانات مايكروسافت استفاده ميشود. جداول بكار رفته نيز همگي در SQL Server 7.0 در Database Northwind موجود هستند. دستور Select اين دستور كه دستوري مستقل نيست و حتما بايد با اجزايي بكار رود جهت ساخت پرس و جو بر روي بانك اطلاعاتي بكار ميرود و ركوردهايي كه با شرايط اين دستور همخوان باشد به عنوان نتيجه پرس و جو برميگرداند . چهار كلمه كليدي وجود دارند كه بخشهاي ارزشمند اين دستور را تشكيل ميدهند : 1- select 2- from 3- where 4- order by شكل كلي دستور : Select [*|distinct column1, column2,…] From table[,table2,…] Where شرط Order by نام فيلد يا شماره فيلد مثال : Select * from customers اين دستور تمام ركوردهاي جدول customers را برميگرداند. كه نتيجه 91 سطر از اطلاعات اين جدول خواهد بود حال اگر شرط Country ='uk' اضافه كنيم ، فقط اطلاعات مشتريان انگليس جواب خواهند بود كه به 7 سطر تقليل مييابد. select * from customers where Country ='uk' حال select City,Country from customers order by city فقط ستونهاي نام شهر (city) و نام كشور (Country) را بر گردانده و بر اساس نام شهر مرتب ميكند. دستور بالا با دستور پايين هردو يك جواب را ميدهند : select City,Country from customers order by 1 كه 91 سطر بازگردانده خواهد شد . در نتيجه پرس و جو تعدادي سطر تكراري وجود دارد مانند شهر London كه اگر از كلمه Distinct در Select استفاده كنيم اين سطرهاي تكراري حذف خواهد شد . select distinct City,Country from customers order by 1 و جواب 69 سطر خواهد بود. استفاده از توابع در Select 1- Count : تعداد سطرهاي بازگردانده شده توسط select را ميشمارد. Select Count(*) from Customers where Country ='uk' در اصل تعداد مشترياني را ميشمارد كه در كشور انگليس هستند. كه عدد 7 جواب است. 2- Sum : مجموع يك فيلد عددي را برميگرداند. Select sum(Quantity) from [Order Details] where productid = 11 مجموع فيلد Quantity را براي فيلدهايي كه شماره محصول آنها ( Productid) برابر 11 است را محاسبه ميكند نكته 1 : در دستور select ميتوان از اسم مستعار استفاده كرد ، يعني نام جديدي را براي يك ستون در نظر گرفت به عنوان مثال select قبل را به شكل زير بكار برد : Select sum(Quantity) as Sum_QTY from [Order Details] where productid = 11 كه Sum_QTY يك اسم مستعار براي مجموع است. استفاده از كلمه كليديas اختياري است. نكته 2 : در دستور select هرگاه اسم فيلدي اسم خاص باشد و يا فاصله بين اسم باشد مثل Order Details كه فاصله بين اسم جدول است حتماُ از علامت براكت [] ميبايست استفاده كرد. نكته 3 : استفاده از group by : هنگامي كه از توابع count و Sum به همراه يك فيلد ديگر در دستور select استفاده ميشود از group by استفاده ميكنيم . به عنوان مثال دستور زير جمع مقادير فيلد Quantity را براي هر شماره محصول محاسبه ميكند . Select productid, sum(Quantity) as sum_qty from [Order Details] group by productid كه نتيجه مانند زير خواهد بود : productid sum_qty ----------- ----------- 61 603 3 328 32 297 6 301 41 981 64 740 9 95 12 344 در صورتيكه دستور ordr by 1 بعد از group by استفاده كنيم نتيجه بر اساس كد محصول مرتب خواهد شد. نكته 4 : دستور where مي تواند خود شامل يك دستور select باشد : select * from Products where ProductID in ( select distinct ProductID from [order details] where Quantity >70) order by ProductID تنها نكته اي كه مي بايست توجه كرد اين است كه نام فيلدي كه در شرط آورده مي شود حتما در دستور select آورده شود, به عبارت ديگر select درون شرط تنها يك ستون را مي بايست برگرداند . تمرين : با فرض اينكه دو جدول Products و order details داراي ستون (فيلد) يكسان ProductID هستند , يك دستور Select بنويسيد كه تمام فيلدهايي از Products را نشان دهد كه فيلد ProductID آن با ProductID جدول order details يكي باشد.؟ حل : Select pr.* From Products as pr , [order details] as od Where pr. ProductID = od. ProductID قابل به ذكر است كه بيش از 90% از كارهايي كه ما برروي جداول انجام مي دهيم با select و تركيبات آن انجام مي شود. لذا بدست آوردن تبحر در نوشتن select ها مي تواند شما را در تهيه برنامه ها ياري كند. 3- Min,max : بيشترين و كمترين مقدار فيلد را در بانك اطلاعاتي بدست مي دهد. Select min (Quantity) from [Order Details] 4- Top n : تعداد n سطر اول بانك اطلاعاتي را برمي گرداند. Select top 5 * from [Order Details] 5 سطر اول بانك را برمي گرداند. نكته 3 : در حالت بالا اگر مقدار سطر 5 و 6 يكي باشد فقط سطر 5 جواب خواهد بود براي گريز از اين حالت از شكل زير در اين دستور استفاده ميكنيم : Select top n with ties * From table 5- Into Select * from table1 into table2 اطلاعات table1 را به table2 كپي ميكند. البته table2 بايد از قبل وجود نداشته باشد. اين دستور خود table2 را ميسازد. دستور select قويترين و كاربردي ترين دستور در sql است كه خود ماهها نيازمند تمرين و آموزش است . براي اطلاعات بيشتر به books online خود Sql Server مراجع كنيد. دستور Delete براي حذف اطلاعات از يك بانك اطلاعاتي استفاده ميشود. شكل كلي دستور : Delete table1 Where شرط مثال : فرض كنيد جدول authors موجود باشد و فيلد كليد آن au_id باشد. براي حذف 10 سطر اول اين جدول از دستور زير استفاده مي كنيم : DELETE authors FROM (SELECT TOP 10 * FROM authors) AS t1 WHERE authors.au_id = t1.au_id دستور insert براي اضافه كردن اطلاعات به يك جدول از اين دستور استفاده ميشود. Insert into table1 (f1,f2,…) Values (v1,v2,…) كه f1,f2 نام فيلدها و v1,v2 مقادير آنها ميباشد. البته ميتوانيد مقادير را نتيجه يك select قرار داد. مثال : Insert into table1 Select top 10 From table2 مقدار 10 سطر اول را از table2 را در table1 درج ميكند. البته بايد تعداد فيلدها يكي باشد. در غير اينصورت از values استفاده كنيد ادامه مطلب... نميدونم شما چقدر با شبه كد اشنايي داريد اگر بخواهم از اول شروع كنم بايد بگم ميشود شبه كد را مانند يك زبان برنامه نويسي تصور كرد كه از خيلي اصول و پيچيده گي هاي زبانهاي برنامه نويسي جدا بوده در عين حال بسيار ساده و قابل فهم است و به زبان فارسي نوشته ميشود. اگر چه چيزي كه ما مينويسيم براي كامپيوتر قابل درك نيست ولي فوايد بسيار زيادي دارد. توسط شبه كد شما ميتوانيد برداشتي كلي بر روي برنامه داشته باشيد در صورت ايراد انها را رفع نموده يا از بين چندين ساختار بهترين را انتخاب كنيد و سپس برنامه اصلي را بنويسيد. شايد شما از ان عده افرادي باشيد كه بخواهيد توسط ويژوال برنامه هايي بنويسيد كه كاربردي باشد كه بسيار بزرگ خواهد شد در اين زمان شما نياز داريد كه تكنيك برنامه نويسي ساخت يافته را بياموزيد و شبه كد ميتواند در اين مورد كمك زيادي به شما بكند. خوب بگذاريد به سراغ يك مثال عملي برويم. ميخواهيم برنامه اي بنويسيم كه يك عدد را بگيرد آن را دو برابر كرده و سپس نمايش دهد. شبه كد را به صورت زير مينويسيم شروع n را بگير 2 برابر n را در n قرار بده n را چاپ كن پايان خوب همان طور كه هر برنامه اي نياز به يك شروع و پايان دارد هر شبه كدي نيز به شروع و پايان نياز دارد. ابتدا ما بايد داده هاي مورد نياز برنامه را به ان داده تا دستورات را بر روي انها اجرا كند در خط دوم n يك نام دلخواه است كه به متغييري كه ورودي را دريافت ميكند داده شده است. در خط سوم مقدار متغيير دو برابر شده و در خودش ذخيره ميشود.توجه كنيد كه اگر عدد ما 2 بوده باشد مقدار n هم اكنون 4 است. خط چهارم مقدار نهايي n را نمايش ميدهد. مثال 2: ميخواهيم شبه كدي بنويسيم كه اگر عدد ورودي زير 10 بود" كوچكتر از ده" و اگر ده يا بزرگتر از 10 بود "بزرگتر مساوي ده" را نمايش دهد. به صورت زير عمل ميكنيم شروع n را بگير اگر n<10 آنگاه "كوچكتر از ده" را چاپ كن در غير اين صورت "بزرگتر مساوي ده" را چاپ كن پايان در خط اول برنامه شروع شده خط دوم عدد مورد نظر ما دريافت يا به عبارتي مقدار n با عدد ما مقدار دهي ميشود در خط سوم بررسي ميشود كه عدد كوچكتر از ده است يا نه اگر بود دستورات خط چهارم اجرا شده و "كوچكتر از ده" نمايش داده ميشود و اگر نبود دستورات خط ششم اجرا شده و "بزرگتر مساوي ده"اجرا ميشود. در خط هفتم برنامه به اتمام ميرسد مثال 3: ما ميتوانيم كه به هر اندازه كه بخواهيم براي برنامه شرط بگذاريم. برنامه اي مينويسيم كه اگر عدد 1 بود"يك " اگر 2 بود "دو" اگر كوچكتر از 1 بود "كوچكتر از يك" و اگر بزرگتر از 2 بود "بزرگتر از دو" را چاپ كند. برنامه را به شكل زير مينويسيم شروع n را بگير اگر n=1 آنگاه "يك" را چاپ كن اگر n=2 آنگاه "دو" را چاپ كن اگر n<1 آنگاه "كوچكتر از يك " را چاپ كن اگر2 < n بود آنگاه "بزرگتر از دو " را چاپ كن پايان مثال4: از ديگر دستورات شبه كد ميتوان <براي> را نام برد اين دستور تقربا شبيه تا زماني كه عمل كرده ولي تفاوت ان اين است كه عوض كردن مقدار متغيير بعد از هر بار اجرا را خودكار انجام ميدهد. در دستور بالا متغيير در هر بار اجراي برنامه يك واحد كم ميشود. حال اگر برنامه ي 4 را با دستور براي مينويسيم شروع n را بگير براي اعداد 1 تا n اعداد را چاپ كن پايان همانطور كه ميبينيد برنامه به طور خودكار هر بار يك واحد به عدد اضافه ميكند. حال كه دستورات اساسي و اوليه شبه كد را اموختيم به بررسي چند مثال كاربردي تر ميپردازيم. اگر از من ميشنويد تا زماني كه اين شبه كدها رو خودتون ننويسيد ياد نميگيريد اول سعي خودتون رو بكنيد اگه نتونستيد به كدها نگاه كنيد مثال 5:برنامه اي بنويسيد كه سه عدد را دريافت و ميانگين آنها را نمايش دهد. شروع a و b و c را بگير a+b+c را در sum قرار بده sum/3 را در average قرار بده average را چاپ كن پايان همان طور كه در اين مثال ميبينيد هر چقدر كه نياز باشد ميتوانيم از متغيير ها استفاده كنيم. در خط 2 اعداد به برنامه داده ميشوند. در خط 3 مجموع اعداد در متغييري به نام sum ذخيره ميشوند توجه كنيد كه نحوه ي نامگذاري متغيير ها اختياري است ولي بهتر است كه از كلمات معنا دار استفاده كنيد كه دچار گمراهي نشويد. در خط 4 مقدار تقسيم بر 3 شده و در متغيير ديگر به نام average ذخيره شده است و در خط 5 مقدار average نمايش داده شده است. از اونجايي كه الان خيلي خوابم مياد بقيه ي مثال ها رو ميذارم براي ارسال بعدي. ادامه مطلب...
عناوين ضميمه كليك روزنامه جام جم شماره 311: - اجرايي شدن نخستين پروژه پايلوت شبكههاي نسل آينده - انتقاد مديران وبلاگهاي داخلي از نحوه ف ي ل ت رينگ - بليت الكترونيكي در سراسر كشور - همراه اول در سوريه ناكام ماند - به علت سرقت كابل 4000 شماره تلفن از دسترس خارج شد - اينترنت يك گيگابيت در انگليس - مشابههاي استاكسنت در راهند - فروش عجيب و غريب - حراج نسل چهارم موبايل در فرانسه - حركت گوگل به سوي كپي رايت - عوامل مشوق كاربر در طراحي وب، هديه بدهيد، تشويق كنيد! - ميگرديد؟ در 5 دقيقه، سايت يا نرمافزار چندرسانهاي خود را دگرگون كنيد، منوهاي حرفهاي فلش - انتقال بدون ترك استوديو! - پيانوي مجازي - نرمافزار منبعباز براي انجام كارهاي گرافيكي، نقاشيهاي من - افزايش ضريب نفوذ تلفن همراه در كشورهاي پيشرفته - انفجار درويد هوشمند موتورولا در طول مكالمه - بررسي و معرفي نرمافزارهاي منبع باز و رايگان مديريت پروژه، مديريت پروژه بدون هزينه اضافه - از ماشينهاي دست دوم ناشناس تا بهترين ماشينهاي كره زمين، نبرد در بزرگترين بازي رانندگي - زامبيها در بازيهاي كامپيوتري همچنان كليشهاند، مردگاني در انتظار كشتن - اخبار، تلفن پياسپي آمد - بازي موبايل، Catapult Madness منجنيق ديوانهوار - ايجاد فايل اجرايي از فايلهاي فلش، خروجي نهايي -اولين مبدل تصويري با كارت گرافيك، پردازنده اصلي را بيكار بگذاريد - پردازندههاي جديد سنديبريج اينتل، پل شني اينتل ميان پردازش CPU و GPU - ايجاد ريد نرمافزاري در ويندوز7 - ايجاد سند گوگل با يك كليك راست - فناوري ديجيتال - و... ----------------------------------------------
پسورد فايل زيپ : www.asandownload.com
ادامه مطلب... سلام شما كاربر گرامي بعد از مطالعه دقيق اين بخش از آموزش خواهيد توانست قالب وبلاگ خود را خودتان طراحي كنيد و يك قالب كاملا شخصي براي خود داشته باشيد چنانچه مايل باشيد ميتوانيد قالب هاي طراحي شده خود را براي سايت بهاربيست بفرستيد و قالبتان با نام وبلاگ خود شما در اين سايت قرار گيرد چنانچه قالب هاي طراحي شده توسط شما بيش از 10 قالب شود يك بخش اختصاصي براي قالب هاي طراحي شده توسط شما در سايت بهاربيست ساخته ميشود و بينندگان سايت بهاربيست ميتوانند از قالب هاي شما استفاده كنند با نام و ياد خدا آموزش ويرايش تصاوير قالب وبلاگ را شروع ميكنيم نرم افزار معروف فوتوشاپ را حتما بر روي سيستم خود نصب كرده و داشته باشيد براي طراحي عكس ميتوانيد از هر كس و يا هر نرم افزار ديگري كه دوست داريد كمك بگيريد در اين بخش ميخواهيم قالبي كه در تصوير زير مشاهده ميكنيد را ويرايش كرده و شخصي كنيم
ابتدا فايل زير را دانلود كرده و بر روي كامپيوتر خود داشته باشيد براي دانلود بر روي دانلود فايل راست كليك كرده و گزينه Save Target as را فشار دهيد سپس آدرسي كه ميخواهيد فايل در آنجا قرار گيرد را انتخاب و Save كنيد
![]() ![]() فايل زير را دانلود كرده و بر روي كامپيوتر خود داشته باشيد براي دانلود بر روي دانلود فايل راست كليك كرده و گزينه Save Target as را فشار دهيد سپس آدرسي كه ميخواهيد فايل در آنجا قرار گيرد را انتخاب و Save كنيد
فايلي كه بر روي كامپيوتر شما قرار گرفته به اسم themes.htm ميباشد بر روي اين فايل راست كليك كنيد و موس خود را بر روي گزينه Open with ببريد بعد از باز شدن منوي كشويي گزينه Choose program را فشار دهيد در صفحه باز شده گزينه Notepad را پيدا كرده و انتخاب كنيد سپس روي دكمه OK كليك كنيد حالا همينطور اين صفحه كدهاي html را رها كرده و كد قالب وبلاگي كه ميخواهيد تغيير دهيد را جايگزين كدهاي اين فايل كنيد يعني كدي كه در ويرايش قالب وبلاگ شما است را بجاي كدهاي اين صفحه قرار داده و سيو كنيد حالا تصويري كه ميخواهيد تغيير دهيد را پيدا كرده ، سيو كرده ، با نرم افزار فوتوشاپ تغيير داده و ... خوب ، حالا تصوير شما آماده است تا در قالب وبلاگتان قرار گيرد براي اين كار بايد تصوير خود را در يك فضاي اينترنتي آپلود كنيد براي آپلود تصوير به سايت http://www.tinypic.com رفته و روي گزينه Browse كليك كنيد تصوير خود را انتخاب و روي گزينه سبز رنگ UPLOAD NOW كليك كنيد چند لحظه صبر كنيد تا تصوير شما آپلود شود سپس در صفحه جديد كدي كه در قسمت چهارم يعني Direct Link for Layouts را انتخاب كنيد مثل كد http://i40.tinypic.com/ws8xsn.jpg
حالا كد تصوير خود را كه شبيه به كد بالاست بجاي كد تصوير قبل در صفحه كدهاي قالب كه پيدا كرده بوديد قرار دهيد در اين لحظه دقت كنيد كه كد تصوير قبلي به طور كامل حذف شود و بقيه كدها تغييري نكند هميشه كد تصوير در بين دو علامت ' قرار دارد دقت كنيد اين علامت از طرفين كد حذف نشود ، همچنين وقتي كد جديد را وارد كرديد دقت كنيد بين كد و علامت ' هيچ گونه فاصله اي نباشد كه اگر باشد تصوير در قالب وبلاگتان باز نخواهد شد بعد از اينكه كد تصوير جديد را به درستي جايگزين كد تصوير قبل كرديد از منوي File گزينه Save را فشار دهيد كه قالب جديد شما در رايانه شخصي خودتون Save شود حالا همه كدها را انتخاب كنيد ( براي اين كار در وسط كدها راست كليك كرده و گزينه Select all را فشار دهيد ) ادامه مطلب... در اين درس با ارائه چند برنامه و مثال ساده به طرز كار با C# مي پردازيم ليست 1-1 , يك برنامه ساده با عنوان Welcome در زبان C# كلاس آغازين برنامه// نكته: در صورتيكه از Visual studio.net كنيد، پس از اجراي برنامه يك صفحه براي نمايش خروجي به سرعت باز استفاده از اين دستور باعث مي شود تا برنامه منتظر دريافت يك ورودي از كاربر بماند كه در اين حالت شما مي توانيد ليست 2-1 :برنامه اي كه ورودي را از كاربر، بعنوان پارامتر Main() دريافت مي كند. مطلبي كه بايد در مورد ليست 2-1 به آن شود آنست كه اين برنامه تنها از طريق Command-Line قابل اجرا است و در صورتيكه كاربر از اين مطلب كه برنامه بايد داراي ورودي به صورت Command-Line باشد بي اطلاع باشد و ورودي را در Command-Line وارد نكند برنامه متوقف شده و اجرا نمي شود پس براي رفع چنين مشكلي بايد از روش بهتري جهت دريافت ورودي از كاربر استفاده كرد. ليست 3-1 : يك برنامه كه قابليت محاوره را دارد همانطوريكه در اين برنامه ديده مي شود، متد Main() داراي پارامتر نيست. در عوض يك خط به متن برنامه ليست 2-1 اضافه ادامه مطلب... :: منظور از Syntax یک زبان برنامه نویسی چیست ؟ Syntax در واقع قواعد نحوی و نوشتاری یک زبان برنامه نویسی است . یعنی اینکه دستورات یک زبان برنامه نویسی به چه شکلی باید نوشته بشه . در ظاهر امر ، بارزترین تفاوت زبانهای برنامه نویسی همین تفاوت Syntax اونها هستش . و اگر در [...]
ادامه مطلب... درود بر هموطنان عزیز. مطمئنا شما هم تا به امروز به کتابهای الکترونیکی یا همون PDF برخورد داشتید! شاهکاری که شرکت Adobe اون رو ساخت برای اینکه پرونده های در حال انتقال شکل و شمایل خودشون رو حفظ کنن و از سیستمی به سیستم دیگه که میرن قاطی نشن به دلایل مختلف از جمله نبود [...]
ادامه مطلب... درود بر هموطنان عزیز. واقعا امروز وقتی بعد چندین روز نظرات رو خوندم بابت همه تاخیرها و اینکه خیلیا از ما گله مند شدن جدا ناراحت شدم. و الان اومدم خدمتتون تا جریان رو به همتون بگم و هم ازتون عذرخواهی کنم بابت تاخیرهای بوجود اومده! تاخیرهای من علتهای بخصوص خودشو دار ه که از [...]
ادامه مطلب... در این پست میخوایم به شما یاد بدیم که چطور برای سی دی هایی که رایت می کنید یک فایل اجرایی رو به عنوان autorun قرار بدید . و همچنین اینکه چطور برای این CDها آیکون تعیین کنید . اگر دقت کرده باشید در تمام CDهایی که Autorun یا آیکون یا هر دو رو دارند [...]
ادامه مطلب... http://signatures.khanwars.static.xs-software.com/signatures/ir/world_1/91740.jpg
[url=http://khanwars.ir/?recruit=1H91740][img]http://signatures.khanwars.static.xs-software.com/signatures/ir/world_1/91740.jpg[/img][/url]
|