.\" cf. groff_mdoc .Dd April 26, 2012 .Os FreeTDS 1.5.19 .Dt DEFNCOPY FreeTDS "FreeTDS Reference Manual" .\" .Sh "نام (NAME)" .Nm defncopy .Nd استخراج روال‌ها و نماها از یک سرور مایکروسافت .\" .Sh "خلاصه دستور (SYNOPSIS)" .Pp .Nm .Op Fl v .Op Fl U Ar username .Op Fl P Ar password .Op Fl S Ar server .Op Fl D Ar database .Op Fl i Ar input_file .Op Fl o Ar output_file .Bo .Ar owner.object_name .\" Elipsis according to Werner Lemberg: .\" http://www.mail-archive.com/groff@gnu.org/msg03122.html .Op Ar owner.object_name .\|.\|.\& .Bc .\" .Sh "توضیحات (DESCRIPTION)" .Pp .Nm برنامه‌ای کاربردی است که همراه با FreeTDS توزیع می‌شود. این ابزار جایگزین برنامه‌ای مشابه با همین نام می‌شود که توسط Sybase توزیع شده بود. .Pp .Nm متن یک روال ذخیره‌شده (stored procedure) یا نما (view) را خوانده و اسکریپتی مناسب برای بازآفرینی آن روال یا نما می‌نویسد. برای جدول‌ها، این ابزار خروجی sp_help را می‌خواند و دستور .Ql CREATE TABLE را به‌همراه .Ql CREATE INDEX Ns , ایجاد می‌کند. .\" اگر شما یا مالک پایگاه‌داده (database owner) مالک روال یا نمای در حال رونوشت‌برداری باشید، .Ar owner اختیاری است. .Ar object_name نام شیء سیستمی است که قصد استخراج آن را دارید. .\" .Sh "گزینه‌ها (OPTIONS)" .Bl -tag -width indent .It Fl U Ar username نام کاربری برای ورود به سرور پایگاه‌داده. .It Fl P Ar password گذرواژه سرور پایگاه‌داده. .It Fl S Ar server سرور پایگاه‌داده‌ای که باید به آن متصل شد. .It Fl D Ar database پایگاه‌داده مورد استفاده. اگر روال یا نمای در حال استخراج در پایگاه‌داده پیش‌فرض شما باشد، اختیاری است. .It Fl i Ar input_file اسکریپتی برای اعمال روی پایگاه‌داده. در حال حاضر پیاده‌سازی نشده است. .It Fl o Ar output_file فایلی برای نگهداری اسکریپت؛ به‌طور پیش‌فرض خروجی استاندارد است. .It Fl v نمایش اطلاعات نسخه و اعلان حق نشر (کپی‌رایت). .El .\" .Sh "نکات (NOTES)" .Nm یک فیلتر است؛ از ورودی استاندارد می‌خواند، در خروجی استاندارد می‌نویسد و خطاها را در خطای استاندارد ثبت می‌کند. گزینه‌های .Fl i , .Fl o , و .Fl e این مقادیر پیش‌فرض را لغو می‌کنند. .Pp .Nm از رابط برنامه‌نویسی (API) موسوم به db-lib که توسط FreeTDS ارائه شده استفاده می‌کند. این API البته برای توسعه‌دهندگان برنامه‌های کاربردی نیز در دسترس است. .Sh "وضعیت خروج (EXIT STATUS)" .Pp .Nm در صورت موفقیت با وضعیت 0 خارج می‌شود، و اگر سرور نتواند پرس‌وجو را پردازش کند با مقدار >0 به کار خود پایان می‌دهد. .Pp .Nm هرگونه خطای بازگردانده شده توسط سرور را گزارش می‌دهد، اما به پردازش ادامه خواهد داد. .\" .Sh "تاریخچه (HISTORY)" .Pp .Nm نخستین بار در FreeTDS 0.63 ارائه شد. .\" .Sh "نویسندگان (AUTHORS)" ابزار .Nm توسط .An James K. Lowden Aq jklowden@schemamania.org نوشته شده است. .\" .Sh "گزارش باگ‌ها (BUGS)" تنها با سرورهای مایکروسافت و سرورهای بسیار قدیمی Sybase کار می‌کند. کلیدهای اصلی (primary keys) را ایجاد نمی‌کند. گزینه‌های متعددی توسط Sybase تعریف شده‌اند که این نسخه آن‌ها را پیاده‌سازی نکرده است. در صورت تمایل می‌توانید در بهبود و اصلاح این موارد مشارکت کنید. از نظر تئوری، .Nm می‌تواند برای هر شیء سیستمی زبان تعریف داده (DDL) را اعمال یا تولید کند، اما در حال حاضر تنها از جدول‌ها، روال‌ها و نماها پشتیبانی می‌شود، و آن هم صرفاً برای استخراج.