نگاهی دقیقتر به HelloWorld حالا که یک برنامهء جاوا را دیده اید (و احتمالا آنرا compile
و اجرا کرده اید)، ممکن است بخواهید بدانید که این برنامه چگونه کار میکند
و چه شباهتهایی به دیگر برنامه های جاوا دارد. توجه داشته باشید که Java application یک برنامهء standalone در جاوا است، به این معنی که applicationها برنامه هایی هستند که به زبان جاوا نوشته میشوند و برای اجرا شدن، نیازی به یک browser ندارند. توجه: اگر شما چیزهای بیشتری در مورد applicationهای جاوا میدانید، و یا اینکه با مفاهیم "شیء گرایی" (Object Oriented) آشنایی قبلی دارید، و کدهای جاوایی را که تا حالا دیده اید؛ فهمیده اید، میتوانید مستقیما به قسمت نوشتن Appletها بروید. این قسمت به تشریح "HelloWorld" application میپردازد که قبل از این دیده اید. کدهای آن به صورت زیر بود : /** * The HelloWorldApp class implements an application that * simply displays "Hello World!" to the standard output. */ class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); //Display the string. } } Commentها (توضیح ها) در کدهای جاوا "HelloWorld" application، دارای دو بلوک (block) از commentهاست. اولین بلوک، در بالای برنامه، از "حائل" های /** و */ استفاده کرده. بعد از آن در ادامهء یک خط از کدها، از یک comment دیگر با استفاده از // توضیح داده شده. زبان جاوا همچنین از دستهء سومی از commentها استفاده میکند که مشابه commentهای C هستند و با حائلهای /* و */ مشخص میشوند. Commentها در کدهای جاوا در آینده به توضیح این سه شکل مختلف میپردازد. تعریف کردن یک کلاس (class) در زبان برنامه نویسی جاوا، هر متد(=method = function = تابع ) و هر متغییر؛ در محدودهء یک class و یا یک object(= شیء، مثالیست از یک class) تعریف میشود. زبان برنامه نویسی جاوا از "توابع" و متغییرهای سرایری(global) پشتیبانی نمیکند. بنابراین اسکلت بندی یک برنامهء جاوا تشکیل شده از "تعریف یک class". تعریف کردن یک class؛ اطلاعات بیشتری در این ضمینه به شما میدهد. متد main نقطهء شروع هر برنامهء جاوا، متد main آن است. وقتی که یک application را بوسیلهء مفسر(interpreter) جاوا اجرا میکنید، اسم کلاسی را که میخواهید اجرا کنید؛ مشخص میکنید. Interpreter، اول از همه متد main واقع در آن class را صدا میزند. متد main؛ جریان واقع در برنامه را کنترل میکند، هر چیزی را که منابع نیاز دارند را معین میکند، و متدها را اجرا میکند. متد main؛ اطلاعات بیشتری در این ضمینه به شما میدهد. استفاده کردن از Classها و Objectها اجزاء دیگر یک Java application، objectها، classها، و متدها و دستوراتی هستند که شما برای پیاده سازی برنامهء خود از آنها استفاده میکنید. استفاده کردن از Classها و Objectها؛ این اجزاء را به شما معرفی میکند.
واژه کلیدی Order By :
عبارت ORDER BY رکورد های اطلاعاتی را بر اساس ستونی مشخص مرتب میکند
این
عبارت به طور پیش فرض اطلاعات را صعودی مرتب میکند، اگر شما تمایل دارید
اطلاعات خود را به طور نزولی مرتب کنید باید از عبارتDESC استفاده کنید .
دستور ORDER BY:
SELECT column_name(s)
FROM table_name
ORDER BY column_name(s) ASC|DESC
ASC(ascending order) مرتب کردن به صورت صعودی و DESC(descending order) مرتب کردن به صورت نزولی میباشد.
مثال :
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
4 | Nilsen | Tom | Vingvn 23 | Stavanger |
فرض کنید میخواهیم از جدول بالا لیست تمام افراد را بیرون بکشیم در حالی که میخواهیم این اسامی بر اساس نامشان مرتب شده باشند.
از دستور زیر استفاده میکنیم:
SELECT * FROM Persons
ORDER BY LastName
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
4 | Nilsen | Tom | Vingvn 23 | Stavanger |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
حالا افراد را از جدول بالا خارج میکنیم به طوری که بر اساس نام خانوادگیشان و به صورت نزولی مرتب شده باشند.
برای این کار از دستور زیر استفاده میکنیم .
SELECT * FROM Persons
ORDER BY LastName DESC
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
4 | Nilsen | Tom | Vingvn 23 | Stavanger |
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
ارتباط دادن جداول
Query هایی که در فصل 3 بررسی گردید سطرهایش از یک جدول تکی ترسیم
گردیده است اما Query ها به ویژه می توانند مفید باشند برای ترکیب ستونهایی
از چندین جدول یا نما که Joining Tables نامیده می شود و آن در شرطهای
FROM یا WHERE از حالت SELECT انجام می گیرد. در این فصل ما بر روی ایجاد
ارتباطها با استفاده از شرط FROM که روشی توصیه شده است متمرکز خواهیم شد.
شناختن شرط FROM
همان طوری که ما دیده ایم، ساختار پایه ای از شرط FROM به آسانی نام از
یک جدول یا نما ساده را فراهم می سازد. اما برای دسترسی پیدا کردن به
توانایی از مدل ارتباطی، ما باید به بازیابی ستونها از جداول چندگانه و
نماها در یک Query خاص قادر باشیم. شرط FROM یک مکانیزمی برای انجام آن با
استفاده از ساختار دستور زیر:FROMON
اپراتور پیوند انواع پیوند برای به انجام رسیدن را تشریح می کند.
Server SQL پیوندهای داخلی و خارجی همه نوسانات را پشتیبانی می کند، همان
طوری که در بخش بعدی خواهیم دید. شرایط پیوند یک تعبیری می باشد شبیه به
ملاک که در شرط WHERE استفاده شده است. آن مشخص می کند که چگونه سطرها در
دو جدول ارتباط خواهند یافت. بیشتر پردازشگرهای ربطی روی پایه ای از
عبارتهای برابری مانند B ستون = A ستون به انجام می رسند. اما SQL Server
هر اپراتور منطقی را پشتیبانی کرده و شرایط پیوند می تواند به طور دلخواه
پیچیده باشد، با عبارات چندگانه پیوند یافته که از حرف ربط AND یا OR از
همان راهی که یک شرط WHERE می تواند ملاک انتخابی چندگانه را شامل باشد
استفاده کند. عبارت پیوند می تواند برای اضافه کردن جداول و نماهای اضافی
برای Query تکرار شود. ساختار دستور برای پیوند جداول چندگانه عبارت است
از: FROM
ON
یک حدود فرضی 256 جدولی برای هر Query وجود دارد، اما آن به حد زیاد
غیر محتمل است که شما اصلاً نیاز به 5 یا 6 نیاز ندارید و 2 یا 3 بیشتر
معمول می باشد. در حقیقت اگر شما نیاز به اتصال بیش از 10 جدول در یک Query
باشید، شما باید به دقت طرح پایگاه داده آن را نگاه کرده برای اینکه مطمئن
شوید که آن به طور صحیح به حالت عادی در آمده است.
ایجاد کردن پیوندها
پیوندها می توانند در Query Designer با استفاده هر کدام از قاب Grid
یا قاب SQL ایجاد گردند. قاب Grid اغلب آسانتر می باشد اگر شما جداولی که
رسماً در طرح پایگاه داده مربوط شده اند پیوند دهید، از موقعی که Query
Designer پیوندی بین آنها به طور خودکار ایجاد خواهد کرد. اما به طور معمول
قاب SQL با انعطاف پذیری بیشتر برای شما فراهم می گردد.
نامگذاری شئی ها
زمانی که شما با یک جدول یا نمای تکی کار می کنید آنجا می تواند هیچ
ابهامی در حدود منابع از یک ستون نداشته باشد از موقعی که همه نام ستونها
در یک جدول باید منحصر به فرد باشند. هنگامی که شما برای بار اول کار کردن
با چندین جدول در یک Query را شروع می کنید یا شما باید برای مشخص کردن نام
ستونها صریحاً مواظب باشید. مشخصات کامل برای هر شئی پایگاه داده چهار
معرفه را در بردارد. نام سرور، نام پایگاه داده، نام صاحب، نام شئی. معرفه
ها به وسیله پریودها جداسازی می گردند. بنابراین نام واجد شرایط از جدول
Oils در سیستم من Bunny.Aromatherary.dbo.Oil می باشد. مقداری از شئی ها
مانند نماها و جداول شامل شئی های دیگر می باشد. برای رجوع به یکی از این
شئی های گنجانده شده (در این حالت، ستونها). شما به آسانی نام آن را به نام
شئی ضمیمه می کنید. نام واجد شرایط کامل از ستون OilID از جدول Oils
(Bunny.Aromatherapy.dbo.Oils.Oil ID) می باشد. خوشبختانه شما فقط نیاز به
مشخص کردن کافی از درجه بندی ابهام اجتناب پذیر دارید.
در یک Query مبنی بر یک جدول تکی، برای مثال نام ستون به وسیله خودش
دارای مشخصات کافی می باشد. اگر یک Query به بیش از یک جدول مربوط گردد،
اگر چه جداول دارای ستونهایی با یک نام باشد. شما باید نام جدول را در نام
شئی (Object) Oils.OilID , OilPropertise.OilID که تمایز را به طور کامل
روشن می سازد لحاظ کنید.
پیوندهای داخلی
بیشترین فرمهای رایج پیوند یک پیوند داخلی می باشد. یک پیوند داخلی فقط
آن سطرهایی که شرایط پیوند TRUE را باز می گرداند باز خواهد گرداند.
پیوند دو جدول با استفاده از قاب دیاگرام
1- Query Designer جدول Oils را به وسیله کلیک راست کردن نام آن در قاب
Details باز کرده روی جدول Open رفته و همه سطرهای بازگشتی را انتخاب می
کنیم.
2- قاب دیاگرام را به وسیله کلیک کردن دکمه قاب دیاگرام روی نوار ابزار Query Designer نشان می دهیم.
3- دکمه Add Table را روی نوار ابزار Query Designer کلیک می کنیم. Query Designer کادر محاوره ای Add Table را نشان می دهد.
4- جدول PlantTypes را در لیست جدول انتخاب کرده و Add را کلیک می کنیم. SQL Server جدول را به Query اضافه می کند.
5- Close را برای بستن کادر محاوره ای Add Table کلیک می کنیم.
6- دکمه قاب SQL را در نوار ابزار Query Designer کلیک می کنیم. Query Designer قاب SQL را نشان می دهد.
7- علامت * را بعد از کلید واژه SELECT حذف می کنیم.
8- دکمه قاب SQL را در نوار ابزار Query Designer کلیک می کنیم. (OK را
کلیک کرده اگر Query Designer یک متن خطا درباره ساختار دستور SELECT نشان
دهد). Query Designer قاب SQL را پنهان می سازد.
مهم: زمانی که شما Query Designer را باز می کنید، حالت SQL معمولاً *
را انتخاب می کند. انتخاب کردن ستونهای مشخص در قاب دیاگرام سبب می شود که
آنها به لیست ستون اضافه شوند. مایکروسافت آن را به صورت یک خصیصه در نظر
می گیرد.
9- در قاب دیاگرام ستونهای OilID و OilName را در جدول Oils و ستون PlantType را در جدول PlantType انتخاب می کنیم.
10- دکمه Run روی نوار ابزار Query Designer برای اجرای Query کلیک می
کنیم. Query Designer مقادیر Planttype را برای هر Oil نشان می دهد.
ارتباط دو جدول به وسیله قاب SQL
1- قاب دیاگرام را پنهان کرده و قاب SQL را به وسیله کلیک کردن دکمه ها روی نوار ابزار Query Designer نشان می دهیم.
2- حالت SQL موجود را با عبارت زیر جایگزین می کنیم.
SELECT Oils.OilID,Oils.Oil Name,PlantParts.PlantPart
FROM OilsINNER Join
PlantParts ON Oils.PlantPartID=PlantParts.PlantPart ID
SELECT Oils.Oil ID.Oils.Oil Name.odors.odor
FROM Oils
INNER Join Oilodors on Oils.OilID=Oil odors.OilID
INNER Join odors on Oilodors.odor ID=odors.odorID
SELECT Oils.Oil Name.Plant Parts.Plant Part
FROM Oils Left Outer Join
Plant Parts on Oils.Plant Part ID=Plant Parts.Plant Part ID
SELECT Oils.Oil Name.Properties.Property
FROM Oils
Right OUTER JOIN Oil Properties on
Oils.Oil ID=Oil Properties.Oil ID
INNER JOIN Properties on
Oil Properties.Property ID=Properties.Property ID
SELECT FROM
UNION [All]
SELECT FROM
[ORDER BY ]
SELECT Property Table AS Table Name.Property ID AS ID
Property AS Quality From Properties
UNION
SELECT odor Table.odor ID odor From odors
ORDER BY Quality
در این دوره مباحثی مثل شی ء گرایی، نحوه مدیریت حافظه، Generic ها، delegate ها، Boxing و UnBoxing ، Reference Type و Value Type و تفاوت آنها و آموزش جامع XML شامل : اعمال تغییرات document های XML با استفاده از Model Document Object، خواندن و نوشتن documentهای XML و دسترسی به documentهای XML با استفاده از مدل Xpath Data آنها به طور کامل به دانشجویان آموزش داده می شود.
جهت اطلاعات بیشتر به سایت http://www.tahlildadeh.com مراجعه نموده و یا با شماره تلفنهای 88146330 و 88146323 تماس حاصل فرمایید.
عنوان دوره : دوره آموزشی C#
پیش نیاز : آشنایی با منطق برنامه نویسی
نرم افزار های مورد استفاده :
MICROSOFT VISUAL STUDIO 2010
MICROSOFT SQL SERVER 2008
فهرست مخاطبین:
اهداف دوره:
سرفصلهای دوره:
o متغیرها
o کنترل جریان
o حلقه ها
o دستورات پرش (Jump)
آبجکت ها و انواع دادهای
o متد ها
o خاصیت ها
وراثت
عملگر ها و Cast ها
مجموعه ها
Generic ها
خطاها و Exception ها
Visual Studio 2008
فرم ها و کنترلهای ویندوزی
ADO.Net
معرفی XML و .NET
دستکاری documentهای XML با استفاده از مدل document object
خواندن و نوشتن documentهای XML
دسترسی به documentهای XML با استفاده از مدل Xpath Data
در این دوره مباحث حرفه ای SQL شامل SSIS، Reporting Service، و همچنین SQL CLR آموزش داده میشود.
جهت اطلاعات بیشتر به سایت http://www.tahlildadeh.com مراجعه نموده و یا با شماره تلفنهای 88146330 و 88146323 تماس حاصل فرمایید.
o پیش نیاز :
o مخاطبین دوره :
o اهداف دوره :
نکته :
Microsoft Integration Service یکی از جالبترین ابزارهای SQL Server می باشد که با استفاده از آن بدون نیاز به برنامه نویسی از هر محیطی به هر محیط دیگر می توان اطلاعات را جا به جا نمود. به عنوان مثال اطلاعات یک فایل Excel را با یک XML ترکیب کرد در SQL از آن گزارش بگیریم و نتیجه را در یک بانک مقصد مثل Oracle, SQL Server, Access, Flat File, … ذخیره کنیم.
نکته :
با استفاده از Microsoft Integration Service می توان توسط SQL پردازش های خارجی(مثل اجرای یک فایل EXE در کامپیوتر مقصد) و ارسال نتایج به هر محیط دیگر مثل ftp یک وب سایت را انجام داد.
آموزش کاربردهای Microsoft Integration Service
نکته :
سازگاری و Integration بین محصولات، از مزایا و خصوصیات بارز کار شرکت Microsoft محسوب میشود. اکنون یکپارچگی تکنولوژیهای برنامه نویسی .NET با SQL Server 2008 افق جدیدی از توانایی ها و نو آوری را پیش روی برنامه نویسان قرار داده که طبعا به خدمت گرفتن چنین امکاناتی، نیازمند دانش فنی مناسب و آگاهی از این مکانیزم جدید در طراحی بانکهای اطلاعاتی می باشد. از این رو سر فصلهای دوره 2008-CLR به نحوی تنظیم شده که دانشجویان، تمام مبانی لازم برای برنامه نویسی در محیط SQL Server به زبان C# و پس از آن، نوشتن انواع Procedure، ساخت تمام Objectها مانند User Defined Aggregate ، User Defined Type، User Defined Function و ... را با زبانهای .NET بطورکامل فرا گیرند.
سرفصل های دوره عبارتند از:
o نصب و شروع کار
o تسک ها
o Data Flow
o متغیرها و عبارات
o Containerها
o پیکر بندی
o نصب و مدیریت
o آشنایی با SQL Server Reporting Services
o معماری Reporting Services 2008
o شروع کار با ابزارهای Reporting Services
o ویزگی های جدید SQL Server Reporting Services 2008
o سناریوهای نصب Reporting Services
o نصب Reporting Services
o Report Server Project Wizard
o Designerهای Report
o زبان تعریف Report
o عبارات
o دسترسی به داده ها
o پارامترهای Report
o کارکردن با Report Items
o گروه بندی، دسته بندی، جمع آوری داده ها، و کارکردن با Scope
o Report Formatting پیشرفته
o Report Navigation
o کارکردن با منابع چند بعدی
o Ad Hoc Reporting
o مدیریت reportها، منابع داد ه ها، و مدل ها
o آیتم های ایمن سازی Report Server
o اجرا و پردازش Report
o عضویت در دریافت reportها
o مدیریت SSRS
o RS Utility
o معرفی SQL CLR
o اولین CLR Stored Procedure
o ساختار SQL CLR و Task های رایج
o ایجاد اشیاء SQL CLR
o مقایسه T-SQL با Managed Code
o جایگزینی Stored Procedures های گسترش یافته، عملکردها، و دیگر اشیاء T-SQL
o Class Library پایه ای .NET Framework
o استفاده از Stored Procedure های SQL CLR در برنامه تان
o مدیریت Error ها در Stored Procedure های CLR
o مدیریت و امنیت CLR