آموزش مقدماتی HTML و CSS (جلسه ۱۸: افزودن رسانه – بخش ۲)
1398/03/22 14:55 , میلاد صاحب نظر

آموزش مقدماتی HTML و CSS (جلسه ۱۸: افزودن رسانه – بخش ۲)

در جلسه قبل موضوع اضافه کردن رسانه به وبسایت مورد بررسی قرار گرفت و آموختید که چگونه می‌توانید تصاویر و فایل‌های صوتی به وبسایتتان اضافه کنید.

علاوه بر عنصر <audio>، همچنین در HTML5 عنصر<video> نیز قرار گرفته است که شباهات‌های زیادی با عنصر <audio>  دارد و در این جلسه به صورت دقیق مورد بررسی قرار خواهد گرفت. با ما همراه باشید!

۱- ساختن اولین صفحه وب قسمت اول ۷-باز کردن Box Model قسمت اول ۱۳-تنظیمات پشت زمینه قسمت اول ۱۹-ایجاد فرم‌ها قسمت اول
۲-ساختن اولین صفحه وب قسمت دوم ۸-باز کردن Box Model قسمت دوم ۱۴-تنظیمات پشت زمینه قسمت دوم ۲۰-ایجاد فرم‌ها قسمت دوم
۳-آشنایی با HTML  قسمت اول ۹-تنظیم موقعیت محتوا قسمت اول ۱۵-ایجاد لیست‌ها قسمت اول ۲۱-سازماندهی اطلاعات با جداول قسمت اول
۴-آشنایی با HTML قسمت دوم ۱۰-تنظیم موقعیت محتوا قسمت دوم ۱۶-ایجاد لیست‌ها قسمت دوم ۲۲-سازماندهی اطلاعات با جداول قسمت دوم
۵-آشنایی با CSS قسمت اول ۱۱-کار با Typography قسمت اول ۱۷-افزودن رسانه قسمت اول ۲۳-نوشتن بهترین کد
۶-آشنایی با CSS قسمت دوم ۱۲-کار با Typography قسمت دوم ۱۸-افزودن رسانه قسمت دوم  

اضافه کردن ویدئو

اضافه کردن ویدئو در HTML5 خیلی شبیه به اضافه کردن صوت است. فقط این بار به جای عنصر <audio> از عنصر <video> استفاده می‌کنیم.

همه اتریبیوت‌ها (loop، contriols،، autoplay، src و preload) و fallbackهای مشابهی که در جلسه قبلی برای اضافه کردن صوت مشاهده کردید، برای ویدئو هم کاربرد دارند.

در عنصر <audio> اگر اتریبیوت controls که boolean بود به وضوح مشخص نمی‌شد، آنگاه کلیپ صوتی نمایش داده نمی‌شد. در ویدئوها، اگر این اتریبیوت مشخص نشود ویدئو نمایش داده خواهد شد.

اما مشاهده ویدئو خیلی سخت خواهد بود، مگر اینکه از اتریبیوت boolean یا بولین autoplay را نیز به کار برده باشید.

در کل، بهترین کار در اینجا این است که از اتریبیوت boolean یا بولین controls استفاده کنیم، مگر اینکه دلیل خوبی داشته باشید و بخواهید که کاربر امکان آغاز، توقف یا تکرار ویدئو را نداشته باشد.

چون ویدئوها در صفحه فضا اشغال می‌کنند، بد نیست که ابعاد مناسبی برای آن‌ها تعیین کنید که این کار اکثر مواقع با ویژگی‌های width و height در CSS انجام می‌شود.

این امر باعث می‌شود مطمئن شویم که ویدئو بیش از حد بزرگ نیست و در چارچوب طراحی انجام شده برای صفحه قرار خواهد گرفت.

علاوه بر این، مشخص کردن سایز، همان‌طور که برای تصاویر هم انجام دادیم، به مرورگرها کمک می‌کند تا ویدئوها را سریع‌تر رندر کنند و برای مرورگر امکانی فراهم می‌کند تا فضای مناسب و کافی برای نمایش ویدئو اختصاص دهد.

<video src="earth.ogv" controls></video>

سفارشی‌سازی کنترل‌های صوت و ویدئو

به صورت پیش‌فرض، کنترل‌های عنصرهای <audio> و <video> توسط هر مرورگر به صورت مستقل مشخص می‌شوند. بسته به طراحی وبسایت، ممکن است به امکانات بیشتری برای تغییر ظاهر و حس media player نیاز داشته باشید.

اگر همین‌طور است، می‌توانید یک player سفارشی‌سازی شده بسازید، اما این کار کمی نیاز به کار کردن با جاوا اسکریپت دارد.

علاوه بر این، اگر یک player سفارشی‌سازی شده از عنصر <img> به عنوان یک کنترل استفاده کند، آنگاه مقدار اتریبیوت alt باید به وضوح مشخص کند که تصویر یک کنترل است و برای عمل کردن نیاز به تعامل مناسب دارد.

اتریبیوت Poster

یک اتریبیوت دیگر که برای عنصر <video> موجود است، اتریبیوت poster است. اتریبیوت poster به ما امکان می‌دهد تا یک تصویر را به فرم یک URL مشخص کنیم، تا قبل از اینکه ویدئو اجرا شود، نمایش داده شود.

مثال زیر از یک screen capture از ویدئو به عنوان poster برای ویدئوی Earth استفاده می‌کند.

<video src="earth.ogv" controls poster="earth-video-screenshot.jpg"></video>

Fallbackهای ویدئو

همانند عنصر <audio>، همچنین fallbackهای ویدئو نیز ضروری و مهم هستند. همان فرمت‌های علامت‌گذاری (یعنی چندین عنصر <source> برای هر نوع فایل و یک fallback متن ساده) همچنین برای عنصر <video> نیز کاربرد دارند.

<video controls>
  <source src="earth.ogv" type="video/ogg">
  <source src="earth.mp4" type="video/mp4">
  Please <a href="earth.mp4" download>download</a> the video.
</video>

یک گزینه fallback اضافی که می‌توانید به جای یک fallback متن ساده از آن استفاده کنید، استفاده از یک ویدئوی ادغامی یا ترکیبی YouTube یا Vimeo است.

این وبسایت‌های هاستینگ ویدئو به شما امکان آپلود ویدئوهایتان را می‌دهند، یک player ویدئوی استاندارد فراهم می‌کنند و شما را قادر می‌سازند تا ویدئوهایتان را با استفاده از یک قالب inline با یک صفحه ادغام کنید.

فرمت‌های فایل صوتی و ویدئویی در HTML5

پشتیبانی مرورگر برای عنصرهای <audio> و <video> فرق می‌کند، فرمت‌های فایل مورد نیاز برای این عنصرها نیز به همین صورت هستند. هر مرورگر فرمت‌های فایل صوتی و ویدئویی مخصوص و مطلوب خودش را دارد.

چند ابزار وجود دارند که به تبدیل فایل صوتی یا ویدئویی به فرمت‌های مختلف کمک می‌کنند و یک جستجوی سریع در گوگل هزاران مورد از آن‌ها را نمایان خواهد کرد.

اضافه کردن قالب‌های Inline

یک روش دیگر برای اضافه کردن محتوا به صفحه، ادغام یک صفحه HTML دیگر داخل صفحه فعلی است. این کار با استفاده از قالب inline یا عنصر <iframe> انجام می‌شود. عنصر <iframe> آدرس یا URL یک صفحه HTML دیگر را درون مقدار اتریبیوت src می‌گیرد.

این امر باعث می‌شود محتوای داخل صفحه HTML ادغام شده در صفحه فعلی نمایش داده شوند. مقدار اتریبیوت Src می‌تواند یک URL مرتبط با صفحه‌ای که در عنصر <iframe> قرار می‌گیرد باشد یا می‌تواند یک URL مطلق برای یک صفحه کاملاً خارجی باشد.

صفحات وب بسیاری از عنصر <iframe> برای ادغام رسانه در یک صفحه از یک وبسایت خارجی (مانند YouuTube، GoogleMaps و غیره) استفاده می‌کنند.

<iframe src="https://www.google.com/maps/embed?..."></iframe>

عنصر <iframe> دارای چند استایل پیش‌فرض است (از جمله یک border داخلی و همچنین یک width و height).

این استایل‌ها را می‌توانید با استفاده از اتریبیوت‌های HTML مانند width، frameborder و height یا با استفاده از ویژگی‌های CSS مانند width، border و height تنظیم کرد.

صفحات رفرنس یا اشاره ‌شده درون اتریبیوت Src از یک عنصر <iframe>، از قوانین خاص خودشان پیروی می‌کنند، یعنی آن‌ها از هیچ استایل یا رفتار موجود در صفحه‌ اصلی که در آن مورد اشاره قرار گرفته‌اند ارث‌بری نمی‌کنند.

از هیچ استایل اعمال شده برای صفحه‌ای که شامل عنصر <iframe> است توسط صفحه رفرنس شده داخل عنصر <iframe> ارث‌بری نمی‌شود.

علاوه بر این، لینک‌های داخل صفحه رفرنس شده موجود در عنصر <iframe>، در داخل آن قاب باز خواهند شد و در صفحه‌ای که شامل عنصر <iframe> هست هیچ تغییری ایجاد نمی‌کنند.

تمرین

قالب‌های Inline یک روش عالی برای اضافه کردن محتوای پویا به یک صفحه ایجاد می‌کنند. اجازه دهید با به روز رسانی صفحه Venue از وبسایت Styles Conference آن‌ها را امتحان کنیم.

  1. پیش از اضافه کردن نقشه یا قالب inline، اجازه دهید ابتدا صفحه Venue را برای یک گرید دو ستونه آماده کنیم.

    در زیر بخش leading صفحه، یک عنصر <section> با مقدار اتریبیوت کلاس row اضافه می‌کنیم تا یک بخش جدید از صفحه را مشخص کند و سپس چند استایل کلی (مانند background‌سفید و چند padding عمودی) نیز درج می‌کنیم.

    مستقیماً داخل این عنصر <section> یک عنصر <div> با مقدار اتریبیوت کلاس grid اضافه می‌کنیم. کلاس grid محتوای ما را در مرکز صفحه قرار می‌دهد و آن‌ها را برای ستون‌های یک سوم و دو سوم آماده می‌کند.

    تا اینجا، بخش اصلی فایل html ما شبیه به زیر خواهد بود:
    <section class="row">
      <div class="grid">
        ...
      </div>
    </section>
    ​
  2. داخل عنصر <div> که دارای مقدار اتریبیوت کلاس grid است، ما دو بخش جدید داریم، یکی برای محل برگزاری کنفرانس و یکی برای هتل کنفرانس.

    اجازه دهید دو عنصر <section> جدید اضافه کنیم و به هر کدام از این عنصرهای <section> یک کلاس منحصر به فرد بدهیم،‌که متناسب با محتوای آن هستند. از این کلاس‌ها برای اضافه کردن حاشیه‌ها به پایین هر بخش استفاده می‌کنیم.

    کد HTML ما باید تا اینجای که به این شکل باشد:
    <section class="row">
      <div class="grid">
    
        <section class="venue-theatre">
          ...
        </section>
    
        <section class="venue-hotel">
          ...
        </section>
    
      </div>
    </section>​
  3. حالا که چند کلاس برای کار کردن داریم، اجازه دهید یک بخش جدید داخل فایل css برای استایل‌های صفحه Venue ایجاد کنیم.

    یک margin با مقدار ۶۶ پیکسل به پایین عنصر <section> دارای مقدار اتریبیوت کلاس venue-theatre اضافه می‌کنیم تا مقداری فضا بین آن و عنصر <section> در زیر آن ایجاد شود.

    سپس، یک margin با مقدار ۲۲ پیکسل به پایین عنصر <section> دارای مقدار اتریبیوت کلاس venue-hotel اضافه می‌کنیم تا مقداری فضا بین آن و عنصر <footer> در زیر آن فراهم شود.

    بخش venue جدید داخل فایل main.css به این شکل خواهد بود:
    /*
      ========================================
      Venue
      ========================================
    */
    
    .venue-theatre {
      margin-bottom: 66px;
    }
    .venue-hotel {
      margin-bottom: 22px;
    }
    ​

    عنصر <section> دارای مقدار اتریبیوت کلاس venue-hotel، دارای margin پایین کمتری نسبت به عنصر <section> دارای مقدار اتریبیوت کلاس venue-theatre است، چون در کنار padding در پایین عنصر <section> دارای اتریبیوت کلاس row قرار می‌گیرد.

    اضافه کردن آن margin و padding به صورت هم‌زمان، به ما مقدار مشابهی با margin پایین موجود در عنصر <section> دارای مقدار اتریبیوت کلاس Venue-theatre می‌دهد.

  4. حالا وقت آن است که دو ستون داخل هر عنصر <section> جدید ایجاد کنیم. کارمان را با اضافه کردن یک عنصر <div> با مقدار اتریبیوت کلاس col-1-3 برای ایجاد ستون یک سوم شروع می‌کنیم.

    سپس، یک عنصر <iframe> با مقدار اتریبیوت کلاس col-2-3 برای ایجاد ستون دو سوم اضافه می‌کنیم.

    به خاطر داشته باشید که کلاس‌های ستون باعث می‌شوند هر دو عنصرهای <div> و <iframe> به عنصرهای inline-block تبدیل شوند، بنابراین باید فضای خالی که بین آن‌ها به وجود می‌آید را حذف کنیم.

    برای این منظور، یک کامنت HTML مستقیماً پس از بستن تگ <div> باز می‌کنیم و کامنت را بلافاصله قبل از باز شدن تگ <iframe> می‌بندیم.

    در کل، کد HTML برای ستون‌ها به این شکل خواهد بود:
    <section class="row">
      <div class="grid">
    
        <section class="venue-theatre">
        
          <div class="col-1-3"></div><!--
    
          --><iframe class="col-2-3"></iframe>
        
        </section>
        
        <section class="venue-hotel">
    
          <div class="col-1-3"></div><!--
          --><iframe class="col-2-3"></iframe>
        
        </section>
    
      </div>
    </section>
    ​
  5. داخل هر کدام از عنصرهای <div> دارای مقدار اتریبیوت کلاس col-1-3، اجازه دهید نام محل برگزاری را داخل یک عنصر <h2> اضافه کنیم و پس از آن دو عنصر <p> قرار دهیم.

    در اولین عنصر <p> اجازه دهید آدرس محل برگزاری را درج کنیم و در دومین عنصر <p> اجازه دهید وبسایت محل برگزاری (درون یک لینک anchor) و شماره تماس را درج کنیم.

    داخل هر پاراگراف، از عنصر line-break یا خط شکن (یعنی <br>) استفاده می‌کنیم تا brakeهایی داخل آدرس و در بین وبسایت و شماره تلفن قرار گیرند.

    برای عنصر <section> دارای مقدار اتریبیوت کلاس venue-thetre، کد HTML به این شکل است:
    <section class="venue-theatre">
    
      <div class="col-1-3">
        <h2>Chicago Theatre</h2>
        <p>175 N State St <br> Chicago, IL 60601</p>
        <p><a href="http://www.thechicagotheatre.com/">thechicagotheatre.com</a> <br> (312) 462-6300</p>
      </div><!--
    
      --><iframe class="col-2-3"></iframe>
    
    </section>
    ​

    همین الگوی نمایش داده شده در اینجا برای سالن همایش یا theatre، باید برای هتل نیز به کار برود (مسلماً باید از آدرس، وبسایت و شماره تلفن مناسب استفاده کنید).

  6. می‌توانیم این آدرس‌ها را در Google Maps جستجو کنیم. وقتی یک آدرس را پیدا کردیم و یک نقشه سفارشی‌سازی شده ایجاد کردیم، می‌توانیم آن نقشه را در صفحه خود ادغام کنیم.

    با پیروی از دستورالعمل‌های موجود در Google Maps برای به اشتراک گذاری و ادغام یک نقشه، می‌توانیم یک کد HTML برای عنصر <iframe> خود ایجاد کنیم.

    حالا کد HTML را (یعنی عنصر <iframe>، اتریبیوت src و همه چیزهای دیگر) را به داخل صفحه‌ای که عنصر <iframe> فعالی ما قرار دارد، کپی می‌کنیم. این کار را با استفاده از دو عنصر <iframe> مختلف، برای هر موقعیت و آدرس انجام می‌دهیم.

    در هنگام کپی کردن عنصر <iframe> از Google Maps، باید اطمینان حاصل کنیم که اتریبیوت کلاس و مقدار col-2-3 از عنصر <iframe> موجود در کدمان تغییر نکنند. همچنین باید مراقب باشیم که به کامنت HTML که دقیقاً قبل از باز شدن تگ <iframe> بسته می‌شود هم آسیبی نرسد.

    حالا با بررسی مجدد و دقیق عنصر <section> دارای مقدار اتریبیوت کلاس venue-theatre، کد HTML باید شبیه به کد زیر باشد:
    <section class="venue-theatre">
    
      <div class="col-1-3">
        <h2>Chicago Theatre</h2>
        <p>175 N State St <br> Chicago, IL 60601</p>
        <p><a href="http://www.thechicagotheatre.com/">thechicagotheatre.com</a> <br> (312) 462-6300</p>
      </div><!--
    
      --><iframe class="col-2-3" src="https://www.google.com/maps/embed?pb=!1m5!3m3!1m2!1s0x880e2ca55810a493%3A0x4700ddf60fcbfad6!2schicago+theatre!5e0!3m2!1sen!2sus!4v1388701393606"></iframe>
    
    </section>​
  7. در آخر، باید اطمینان حاصل کنیم که عنصرهای <iframe> که به Google Maps رفرنس می‌کنند، حتماً ارتفاع یکسان داشته باشند.

    برای این منظور، یک کلاس جدید به نام venue-map ایجاد می‌کنیم و آن را برای هر کدام از عنصرهای <iframe> همراه با مقدار اتریبیوت کلاس col-2-3 اعمال می‌کنیم.

    کد HTML برای عنصر <section> با مقدار اتریبیوت کلاس venue-theatre حالا شبیه به کد زیر است:
    <section class="venue-theatre">
    
      <div class="col-1-3">
        <h2>Chicago Theatre</h2>
        <p>175 N State St <br> Chicago, IL 60601</p>
        <p><a href="http://www.thechicagotheatre.com/">thechicagotheatre.com</a> <br> (312) 462-6300</p>
      </div><!--
    
      --><iframe class="venue-map col-2-3" src="https://www.google.com/maps/embed?pb=!1m5!3m3!1m2!1s0x880e2ca55810a493%3A0x4700ddf60fcbfad6!2schicago+theatre!5e0!3m2!1sen!2sus!4v1388701393606"></iframe>
    
    </section>​

    وقتی کلاس venue-map برای همه عنصرهای <iframe> اعمال شد، مجموعه قوانین کلاس venue-map را در داخل فایل css ایجاد می‌کنیم. این مجموعه قوانین شامل ویژگی height با یک مقدار ۲۶۴ پیکسلی خواهد بود.

    مجموعه قوانین کلاس venue-map شبیه به کد زیر است:
    .venue-map {
      height: 264px;
    }
    ​

حالا یک صفحه Venue داریم که با نقشه‌هایی برای آدرس‌های مختلف کنفرانس ما تکمیل شده است.

صفحه Venue در وبسایت Styles Conference که حالا شامل قالب‌های inline است

شکل ۱۸.۱. صفحه Venue در وبسایت Styles Conference که حالا شامل قالب‌های inline است.

دمو و کد منبع

در لینک‌های زیر می‌توانید وبسایت Styles Conference را در وضعیت فعلی‌اش و با تغییراتی که در این دو جلسه روی آن اعمال شد مشاهده کنید، همچنین می‌توانید کد منبع وضعیت فعلی وبسایت را نیز دانلود کنید.

لینک مشاهده وبسایت Styles Conference                  کد منبع وبسایت Styles Conference

مشخص کردن معنایی Figureها و Captionها

در HTML5 همچنین عنصرهای <figure> و <figcaption> نیز معرفی شدند. این عنصرها به این دلیل ایجاد شدند تا از لحاظ معنایی محتوای مجزا یا رسانه را (معمولاً با یک کپشن) علامت‌گذاری کنند.

قبل از HTML5، این کار اغلب با استفاده از یک لیست مرتب انجام می‌شد. اگرچه یک لیست منظم کار را به خوبی انجام می‌داد، اما علامت‌گذاری آن از لحاظ معنایی درست نبود.

Figure

<figure> که یک عنصر سطح block است برای شناسایی و احاطه کردن محتوای مجزا و مستقل مورد استفاده قرار می‌گیرد، گاهی به شکل رسانه این کار انجام می‌شود. این عنصر می‌تواند تصاویر، کلیپ‌های صوتی، ویدئوها، قطعات کد، نمودارها، شکل‌ها یا دیگر رسانه‌های مستقل را احاطه کند.

هر دفعه بیش از یک آیتم از محتوای مستقل (مثل چند تصویر یا چند ویدئو) می‌توانند داخل عنصر <figure> قرار بگیرند. اگر عنصر <figure> از بخش اصلی یک صفحه به یک موقعیت دیگر منتقل شد (برای مثال به پایین صفحه)، نباید در محتوا یا خوانایی صفحه اختلال و مشکلی ایجاد کند.

<figure>
  <img src="dog.jpg" alt="A black, brown, and white dog wearing a kerchief">
</figure>

Figure caption

برای اضافه کردن یک کپشن یا legend به عنصر <figure>، باید از عنصر <figcaption> استفاده کنید. <figcaption> می‌تواند در بالا یا پایین یا هر کجا در داخل عنصر <figure> ظاهر شود. به هر حال، ممکن است فقط یک بار ظاهر شود.

وقتی عنصر <figcaption> مورد استفاده قرار می‌گیرد، برای تمام محتوای داخل عنصر <figure> به عنوان کپشن ذخیره می‌شود.

علاوه بر این، عنصر <figcaption> می‌تواند جایگزین اتریبیوت alt در عنصر <img> شود، البته اگر محتوای عنصر <figcaption> توضیح مفیدی از محتوای بصری تصویر ارائه دهد.

<figure>
  <img src="dog.jpg">
  <figcaption>A beautiful black, brown, and white hound dog wearing kerchief.</figcaption>
</figure>

لازم نیست همه اشکال رسانه درون یک عنصر <figure> قرار بگیرند یا در یک عنصر <figcaption> درج شوند. فقط آن‌هایی که مستقل هستند و همچون یک گروه متعلق به یکدیگر هستند باید در این عنصرها قرار بگیرند.

خلاصه

در کنار متن، رسانه یکی از بزرگ‌ترین بخش‌های وب است. استفاده از تصاویر، صوت و ویدئو در همین چند سال اخیر مرسوم شده و رشد کرده‌اند و قرار نیست این سرعت رشد کاهش یابد.

حالا می‌دانیم که چطور باید این اشکال رسانه را داخل طراحی‌های خود قرار دهیم و می‌توانیم از آن‌ها برای غنی‌تر کردن محتوا در وب‌سایت‌ها استفاده کنیم.

در طول این دو جلسه ما مباحث زیر را پوشش دادیم:

  • بهترین روش‌ها برای اضافه کردن تصاویر، کلیپ‌های صوتی، ویدئوها و قالب‌های inline به یک صفحه

  • روش‌های مختلف تعیین موقعیت تصاویر در وضعیت‌های مختلف

  • چگونگی فراهم کردن fallbackهای صوتی و ویدئویی برای مرورگرهای قدیمی

  • اتریبیوت‌های مرسوم موجود برای کلیپ‌های صوتی و ویدئوها

  • روش معنایی برای علامت‌گذاری محتوای مستقل از جمله رسانه

کم‌کم داریم به قسمت‌های آخر یادگیری HTML و CSS می‌رسیم، الآن فقط چند جزء باقی‌ مانده‌اند که باید معرفی کنیم. دو جلسه بعدی راجع به فرم‌ها خواهند بود.

با MUG همراه باشید!

منبع: learn.shayhowe

جلسه بعد                                                                جلسه قبل

 مطالب مرتبط

تعامل با فایل‌ها در HTML5
ایجاد یک فرم HTML و قابلیت تکمیل خودکار فرم‌ها
۵ قالب رایگان HTML برای ایجاد سریع و آسان‌ وبسایت‌ها!
۹ چیز که باید در مورد HTML5 بدانید
آموزش گام به گام #C
برنامه نویسی شیءگرا چیست؟

از آخرین دوره های آموزشی و تخفیف ها مطلع شوید

با تکمیل فرم زیر ، از اخبار و اطلاعات به روز برنامه نویسی و تکنولوژی عقب نمانید

آخرین مطالب

آموزش جامع SQL Server (جلسه ۱۲)
آموزش جامع SQL Server (جلسه ۱۲)

دستور UPDATE در SQL Server برای تغییر داده‌های موجود در یک جدول، از دستور UPDATE به شکل زیر استفاده ...

آموزش جامع SQL Server (جلسه ۱۵)
آموزش جامع SQL Server (جلسه ۱۵)

دستور DROP TABLE در SQL Server گاهی، لازم است یک جدول که دیگر استفاده‌ای ندارد را حذف کنید. برای ...

آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)
آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)

بخش اول از آخرین مبحث دوره جامع آموزش SQL Server در جلسه قبلی بررسی شد. این مبحث که ...

آخرین دیدگاه ها

دیدگاه خود را درباره این پست بنویسید

فرم ارسال نظرات