تفاوت و کاربرد عبارت‌های Having و Where در MySQL

نشان MySQL

مطابق استاندارد رسمی SQL، عبارت Having تنها می‌تواند حاوی شرط‌هایی برای محدود کردن نتایج GROUP BY باشد. با این حال «MySQL 5.0.2» و جدید‌تر به شما اجازه می‌دهد شرط خود را بدون داشتن GROUP BY با کمک Having بنویسید.

دو تفاوت اساسی میان Having و Where وجود دارد که می‌تواند در انتخاب هر یک موثر باشد.

۱- زمان اجرا:
Where در مرحله‌ی جستجوی ردیف‌ها مورد ارزیابی قرار می‌گیرد. یعنی پایگاه داده در هنگامی که جدول‌ها را پردازش می‌کند شرط مقابل Where را نیز در جستجو دخیل می‌کند.
Having تقریبا در پایان مراحل و پیش از آنکه نتایج به مشتری ارسال شود، نتایج یافته شده توسط Where را پاکسازی می‌کند.

۲- بهینه‌سازی
با توجه به آنچه در مورد زمان اجرای هر یک از عبارت‌های Where و Having گفته شد، مشخص است که اعمال بهینه‌سازی بر روی Where امکان‌پذیر و در خصوص Having ناممکن است. زیرا Having نقشی در یافتن رکوردها ندارد و تنها کار حذف رکوردهای نادرست را انجام می‌دهد.

با توجه به دو تفاوت گفته شده، کاربردهای مختلفی نیز برای این دو دستور به وجود می‌آید.
یکی از بهترین مثال‌ها برای استفاده از Having هنگامی است که می‌خواهید یک فیلد محاسباتی را که با ALIAS نامی برای آن برگزیده‌اید، فیلتر کنید.
ادامه‌ی خواندن

ارسال شده در پایگاه داده | برچسب‌شده | ۳ دیدگاه

پشتیبانی نسخه‌ی جدید Notepad++‎ از عبارت‌های منظم Perl

Notepad++

دیروز نسخه‌ی جدید Notepad++‎ منتشر شد
تغییر بزرگی در این نسخه به وجود آمده و آن پشتیبانی از PCRE یا «عبارت‌های منظم سازگار با Perl» است.
در نسخه‌‌های پیشین از استاندارد قدیمی POSIX استفاده می‌شد که قابلیت‌های کمتری داشت و در حل برخی مشکل‌ها ناتوان بود

برای مشاهده‌ی فهرست تفاوت‌های این دو استاندارد اینجا کلیک کنید

برای آشنایی بیشتر با عبارت‌های منظم می‌توانید مطلبی که پیش‌تر در این خصوص نوشتم مطالعه کنید.

برای دریافت آخرین نسخه از ویرایشگر Notepad++‎ اینجا کلیک کنید

ارسال شده در عبارت‌های منظم, نرم‌افزار | برچسب‌شده , , , | دیدگاه‌تان را بنویسید

JSON چیست؟

JSON کوتاه‌شده‌ی عبارت «Javascript Object Notation» به معنی «نشان‌گذاری شیء جاوااسکریپت» است. JSON شیوه‌ای است که با کمک آن اشیا و اطلاعات برنامه‌نویسی به متن قابل پردازش توسط رایانه و قابل فهم برای انسان تبدیل می‌شوند.
نکته‌ مهم در این شیوه قابلیت فهم آسان توسط انسان است که در دیگر شیوه‌ها مانند XML کمتر به آن توجه شده است.
همان گونه که از نام JSON مشخص است، جاوااسکریپت به صورت پیش‌فرض می‌تواند رشته‌های JSON را پردازش و آن‌ها را ایجاد کند. افزون بر جاوااسکریپت، تقریبا تمام زبان‌های برنامه نویسی متداول با کمک کتابخانه‌های جانبی از JSON پشتیبانی می‌کنند.
ادامه‌ی خواندن

ارسال شده در برنامه‌نویسی, جاوااسکریپت | برچسب‌شده | ۱۸ دیدگاه

آشنایی با LocalDB نسخه‌ی جدیدی از SQL Express برای برنامه‌نویسان

راه‌اندازی یک نسخه از پایگاه داده‌ی SQL Server حتی ویرایش Express آن تنها برای استفاده در محیط کدنویسی کاری نسبتا وقت‌گیر و نیازمند اطلاعات جانبی است. شرکت مایکروسافت برای آسان کردن هر چه بیشتر فرآیند برنامه‌نویسی، نسخه‌ی جدیدی از SQL Server Express را با نام «LocalDB» منتشر کرده است. این ویرایش چند تفاوت با نسخه‌های پیشین دارد که به اختصار آن‌ها را مرور می‌کنیم.

نصب آسان

حذف پیچیدگی‌های معمول در نصب مهم‌ترین ویژگی LocalDB است. بیشتر تنظیمات نرم‌افزار به صورت پیش‌فرض و متناسب با محیط برنامه‌نویسی مقداردهی شده‌اند.

عدم اجرای سرویس

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

محل نگهداری فایل‌ها

شاخه‌ی پیش‌فرض برای ذخیره‌سازی فایل‌های پایگاه داده در مسیر Application Data تعیین شده است. هرچند که می‌توانید این شاخه را تغییر دهید.

پایگاه داده‌ی فایلی

یکی از مفیدترین ویژگی‌های LocalDB امکان Attach موقت فایل‌های MDF و LDF در هنگام اتصال است. با تعیین مقدار AttachDbFileName می‌توانید فایل مورد نظر خود را به پایگاه داده معرفی کنید تا آن را Attach کند و ارتباط نرم‌افزار شما را با آن برقرار نماید.

تفاوت با SQL Server Compact

نسخه‌ی Compact قابلیت‌های بسیار محدودی را در اختیار شما قرار می‌دهد مثلا امکان استفاده از Stored Procedureها در این ویرایش وجود ندارد در حالی که نسخه‌ی LocalDB تمامی ویژگی‌های SQL Server Express و آسانی SQL Server Compact را یکجا در خود جای داده است.

استفاده از LocalDB برای تولید نرم‌افزار

تمام محدودیت‌های موجود در SQL Server Express در LocalDB نیز وجود دارند. محدودیت‌هایی مانند مصرف حافظه، حجم پایگاه داده و تعداد پردازنده‌ها. اگر محدودیت‌های اعمال شده مانعی برای شما به حساب نمی‌آیند و نرم‌افزار شما بر روی یک سیستم اجرا می‌شود، LocalDB گزینه‌ی خوبی برای انتشار نرم‌افزارهایی کوچک، سریع و کم حجم به حساب می‌آید.

امکان مهاجرت به نسخه‌های پیشرفته

با خیالی آسوده می‌توانید نرم‌افزار را با کمک LocalDB توسعه داده و در نسخه‌ی نهایی برای انتشار از نسخه‌های قوی‌تر و تحت شبکه‌ی SQL Server استفاده کنید.

منبع

برای دریافت آخرین نسخه از LocalDB اینجا کلیک کنید

ارسال شده در پایگاه داده | ۸ دیدگاه

آشنایی با «سامانه‌ی مدیریت پایگاه داده» یا «DBMS»

یکی از مفاهیم مهم که یادگیری آن برای برنامه‌نویسان تازه‌کار مشکل می‌نماید «DBMS» یا «سامانه‌ی مدیریت پایگاه داده» است. برای آشنایی با این مفهوم و چند نرم‌افزار DBMS این مطلب را دنبال کنید.

وظیفه‌ی اصلی DBMS نگهداری اطلاعات است. آنچه باعث تفاوت DBMS با سامانه‌های نگهداری فایلی می‌شود قابلیت‌هایی است که برخی از آن‌ها را در فهرست زیر مشاهده می‌کنید:

  • مخفی کردن سخت‌افزار ذخیره‌سازی از دید برنامه
  • بازیابی اطلاعات با کمک پرس‌وجوهای پیشرفته
  • امنیت، یکپارچگی، تهیه‌ی پشتیبان، اصلاح خطا
  • استفاده‌ی همزمان و استفاده از راه دور

SQL Server به عنوان یک «سامانه‌ی مدیریت پایگاه داده» نرم‌افزاری است که بر روی سیستم‌عامل نصب می‌شود و وظیفه‌ی نگهداری، طبقه‌بندی، تهیه‌ی پشتیبان و پاسخگویی به درخواست‌های اطلاعاتی نرم‌افزارهای دیگر را برعهده می‌گیرد.
به این معنی که نرم‌افزارها خود را درگیر شیوه‌های ذخیره‌سازی نمی‌کنند و تنها از SQL Server تقاضا می‌کنند تا اطلاعات آن‌ها را به شیوه‌ی خود ذخیره و بازیابی کند.
ادامه‌ی خواندن

ارسال شده در پایگاه داده | برچسب‌شده | ۱۴ دیدگاه

نرم‌افزار رایگان شمارش معکوس تاریخ و زمان


با کمک این برنامه‌ی ساده می‌توانید روز و ساعت باقیمانده تا تاریخ دلخواه خود را محاسبه و به طور زنده مشاهده کنید

این برنامه در قالب HTML Application نوشته شده و فقط در ویندوز قابل اجرا است
برای اجرای برنامه در سایر سیستم‌عامل‌ها پسوند فایل hta رو به html تغییر بدهید و از مرورگر اینترنتی برای باز کردن آن استفاده کنید

دانلود

برای دریافت اینجا کلیک کنید

ارسال شده در برنامه‌نویسی, جاوااسکریپت, نرم‌افزار | ۱۹ دیدگاه

نمایش تاریخ شمسی با جاوااسکریپت برای صفحات ایستا و وبلاگ

اسکریپت کوچکی برای یکی از دوستان آماده کردم که تاریخ شمسی امروز را در سایت‌های ایستا و وبلاگ به نمایش در می‌آورد
روش استفاده از این کد بسیار آسان است.

ارجاعی به فایل اسکریپت «pdate.min.js» در سرآمد سایت یا وبلاگ خود قرار دهید:

<script type="text/javascript" src="pdate.min.js"></script>

یک عنصر div یا span یا هر عنصر دیگر با یک شناسه‌ی منحصر به فرد ایجاد کنید.

<span id="pdate1">تاریخ شمسی اینجا نمایش داده می‌شود</span>

در انتهای فایل به ازای هر فیلد تاریخ دستور زیر را با شناسه‌ی وارد شده برای عنصر بنویسید:

<script type="text/javascript">
	AMIB.showPDate( 'pdate1' );
</script>

اسکریپت به صورت خودکار هر ۶۰ ثانیه یک‌بار تاریخ جدید را در فیلد نشان می‌دهد.
برای دریافت اسکریپت به همراه مثال اینجا کلیک کنید

ارسال شده در برنامه‌نویسی, جاوااسکریپت | ۲۲ دیدگاه

برپاساز هوشمند برای نصب برنامه‌های برپایه GTK+

در هنگام نصب برنامه‌هایی که نیازمند کتابخانه‌های جانبی هستند، بررسی و تصمیم‌گیری‌های هوشمند لازم است
این اسکریپت با برپاساز قدرتمند NSIS گسترش یافته است و از قابلیت‌های آن می‌توان به مورد‌های زیر اشاره کرد:

  • بررسی نصب بودن GTK+ Runtime و بررسی نسخه‌ی آن در صورت وجود
  • آگاه نمودن کاربر از نیازمندی‌های برنامه
  • دریافت خودکار نسخه‌ی مورد نیاز از اینترنت
  • امکان نصب محلی و سراسری به انتخاب کاربر
  • حذف خودکار برنامه و کتابخانه
  • امکان تغییر دادن اسکریپت در کمترین زمان ممکن

دریافت

برای دریافت اسکریپت برپاساز اینجا کلیک کنید

ارسال شده در NSIS | برچسب‌شده , | دیدگاه‌تان را بنویسید

عبارت‌های منظم در php

استفاده از عبارت‌های منظم در php با کمک دو کتابخانه‌ی درونی امکان‌پذیر است. کتابخانه‌ی اول که از مدل POSIX پیروی می‌کند و شامل تابع‌های ereg، ereg_replace، split و … است و کتابخانه‌ی دوم که از مدل PERL پیروی می‌کند و شامل تابع‌های preg_match، preg_replace، preg_split و … می‌شود.
استفاده از سری توابع POSIX در نسخه‌های جدید php منسوخ شده است و توصیه شده تا برنامه‌نویسان از کتابخانه‌ی PERL استفاده کنند.
ادامه‌ی خواندن

ارسال شده در PHP, برنامه‌نویسی, عبارت‌های منظم | برچسب‌شده , , , | ۱۴ دیدگاه

آشنایی با عبارت‌های منظم( Regular Expressions )

عبارت‌های منظم ترکیب‌هایی خاص از حروف و علامت‌ها هستند که برای جستجو و مقایسه‌ی رشته‌ها استفاده می‌شوند. این عبارت‌ها گاهی با نام «Regex» و گاهی با «Regexp» نیز شناخته می‌شوند. استفاده از این عبارت‌ها می‌تواند حجم کدنویسی را تا اندازه‌ی زیادی کاهش دهد. برای مثال ارزیابی ورودی کاربر برای شباهت به یک نشانی ایمیل یا جستجوی یک فایل برای یافتن شماره تلفن‌های موبایل با عبارت‌های منظم امکان‌پذیر است.

تقریبا تمام زبان‌های برنامه‌نویسی از Regex پشتیبانی می‌کنند یا این ویژگی با استفاده از کتابخانه‌های جانبی در آن‌ها امکان‌پذیر است. از آن جمله زبان‌های رایج برنامه‌نویسی وب مانند php، Javascript، و زبان‌های تحت سکوی ‎.Net می‌توانند عبارت‌های منظم را پردازش کنند.
ادامه‌ی خواندن

ارسال شده در عبارت‌های منظم | برچسب‌شده , , | ۲۴ دیدگاه