| FREEBCP(1) | General Commands Manual | FREEBCP(1) |
نام (NAME)
freebcp —
ابزار
بارگذاری
دستهای
دادهها
برای
پایگاههای
داده Sybase و Microsoft
خلاصه دستور (SYNOPSIS)
freebcp
[[⟨database⟩.]⟨owner⟩.]⟨object_name⟩
{in |
[query]out}
datafile {-c |
-n | -f
formatfile} [-S
servername] [-D
dbname] [-U
username] [-P
password] [-b
batchsize] [-F
firstrow] [-L
lastrow] [-e
errfile] [-I
interfaces] [-m
maxerror] [-t
field_term] [-r
row_term] [-h
hints] [-T
textsize] [-A
packet_size] [-O
options] [-i
inputfile] [-o
outputfile] [-C
charset] [-EdVv]
توضیحات (DESCRIPTION)
freebcp
ابزاری
کاربردی
است که به
همراه FreeTDS
توزیع
میشود.
freebcp
عملکرد
ابزارهای bcp
توزیعشده
توسط Sybase و Microsoft را
(حداقل تا
حدی)
شبیهسازی
و
پیادهسازی
میکند.
freebcp از
رابط
برنامهنویسی
کاربردی (API)
مربوط به DB-Library bcp
که توسط FreeTDS
ارائه شده
است
استفاده
میکند. این
API برای
توسعهدهندگان
نرمافزار
نیز در
دسترس است.
برای اطلاعات دقیقتر درباره عملکرد bcp، میتوان به صفحات راهنما یا راهنمای برخط Sybase یا SQL Server مراجعه کرد.
جدولها و فایلها (TABLES AND FILES)
- database
- نام پایگاه دادهای که شیء مورد نظر برای کپی در آن قرار دارد. در صورتی که جدول یا نما (view) در پایگاه داده پیشفرض برای username باشد، اختیاری است.
- schema
- طرحواره (schema) شیء مورد کپی. اگر مشخص نشود، طرحواره پیشفرض برای username استفاده میشود.
- object
- نام شیء پایگاه دادهای که میخواهید به آن دسترسی داشته باشید، معمولاً یک جدول. این شیء میتواند یک نما (view) نیز باشد. همه نماها قابل خواندن هستند؛ برخی از آنها نیز تحت قیود خاصی قابل نوشتن میباشند. به همراه queryout، object میتواند یک پرسوجوی SQL نیز باشد.
- in
- کپی دادهها از یک فایل میزبان به جدول پایگاه داده.
- out
- کپی دادهها از یک جدول پایگاه داده به یک فایل میزبان.
- queryout
- نشان
میدهد که
table_name در
واقع یک
عبارت SQL
است، نه یک
شیء پایگاه
داده.
freebcpاین پرسوجو را اجرا کرده و نتایج را در یک فایل مینویسد. (بهتر است که پرسوجو یک و فقط یک مجموعه نتیجه بازگرداند.) - datafile
- نام یک فایل در سیستمعامل.
گزینهها (OPTIONS)
-Apacket_size- تنظیم اندازه بسته TDS به packet_size. دلیل مشخصی برای انجام این کار وجود ندارد، مگر برای آزمایش و تجربه.
-Ddbname- نام پایگاه
داده
پیشفرضی
که باید
استفاده
شود. پایگاه
داده
پیشفرض
مرتبط با
حساب
کاربری
ورود را
نادیده
میگیرد.
باعث
میشود
freebcpبلافاصله پس از ورود به سیستم و پیش از آغاز عملیات BCP، یک دستورUSEdbname صادر کند. -E- نوشتن دادههای موجود در datafile در ستون IDENTITY جدول. بدون این فلگ، دادههای هویت موجود در datafile نادیده گرفته شده و مقادیر جدید IDENTITY برای سطرهای واردشده تولید میشوند.
-Ffirstrow- نخستین سطری که باید از فایل ورودی یا جدول پایگاه داده کپی شود. مقدار پیشفرض سطر اول، یعنی سطر 1 است.
-Iinterfaces- نام و مسیر فایل interfaces برای جستجو هنگام اتصال به servername. بر تنظیمات freetds.conf ارجحیت دارد.
-Llastrow- آخرین سطری که باید از یک فایل ورودی یا جدول پایگاه داده کپی شود. مقدار پیشفرض آخرین سطر است.
-Ooptions- متن SQL برای
تنظیم
گزینههای
اتصال پیش
از عملیات bcp.
اگر options یک
نام فایل
معتبر
باشد،
دستورات SQL
از فایل
خوانده
میشوند.
گاهی اوقات
برای queryout
مورد نیاز
است. مثال:
-O `SET QUOTED_IDENTIFIER ON'. -Ppassword- گذرواژه مرتبط با username.
-Sservername- نام سرور پایگاه دادهای که باید به آن متصل شوید.
-Ttextsize- برای ستونهای متنی یا تصویری، حداکثر تعداد نویسههای درخواستی از سرور را تعیین میکند. مقدار پیشفرض به تنظیمات در freetds.conf بستگی دارد. اگر در هیچ جا مشخص نشده باشد، به طور پیشفرض اندازه کامل داده در نظر گرفته میشود.
-Uusername- نام کاربری ورود به پایگاه داده. برای اتصالات TDS 7+، در صورتی که username مشخص نشده باشد، تلاش برای ورود از طریق دامنه (domain login) انجام میگیرد.
-bbatchsize- تعداد سطرها در هر دسته از دادههای کپیشده. دستهبندی تنها زمانی اعمال میشود که عملیات بارگذاری دستهای به داخل پایگاه داده انجام گیرد. هر دسته از دادهها عملاً در پایگاه داده “commit” میشود. مقدار پیشفرض برای batchsize برابر با 1000 است.
-c- فایل داده میزبان در قالب «نویسهای» (character) است (یا خواهد بود)، یعنی یک فایل متنی. کدگذاری با مشخصه charset کلاینت در freetds.conf تعیین میشود.
-d- غیرفعال کردن هرگونه ثبت گزارش (لاگگیری). (شاید کمی غیرمنتظره باشد.)
-eerrfile- نوشتن خطاها در errfile. برای بارگذاری دادهها. شامل اطلاعات سطر و ستون و همچنین دادههای سطر است.
-fformatfile- قالب فایل داده میزبان توسط formatfile توصیف میشود. چیدمان formatfile دقیقاً همانند چیزی است که توسط ابزارهای bcp در Sybase و Microsoft فهمیده میشود، اما پیچیدهتر از آن است که در اینجا توضیح داده شود.
-hhints- تنظیم
راهنماهای
bcp (یا bcp hints). برای
مقادیر
معتبر، به
bcp_options() در راهنمای مرجع FreeTDS مراجعه فرمایید. -mmaxerror- توقف پس از برخورد با maxerror خطا. مقدار پیشفرض 10 است.
-n- فایل داده
میزبان در
قالب
«بومی» ( “native”)
است. این
قالبی است
که
freebcpقادر به پردازش آن است، اما قابل حمل یا قابل خواندن برای انسان نیست. -rrow_term- پایاندهنده
سطر برای یک
فایل
نویسهای.
میتواند
بیش از یک
نویسه باشد.
مقدار
پیشفرض
نویسه خط
جدید ('\n') است.
به گزینه
-cدر بالا مراجعه کنید. -tfield_term- پایاندهنده
فیلد برای
فایل
نویسهای.
همچنین به
عنوان
جداکننده
ستون
شناخته
میشود.
میتواند
بیش از یک
نویسه باشد.
مقدار
پیشفرض
نویسه تب ('\t')
است. به
گزینه
-cدر بالا مراجعه کنید. -v-V- چاپ اطلاعات نسخه و خروج.
-iinputfile- خواندن دادههای ورودی از فایل مشخصشده.
-ooutputfile- نوشتن دادههای خروجی در فایل مشخصشده.
-Ccharset- مشخص کردن مجموعه نویسهها (character set) برای ارتباط با سرور.
محیط (ENVIRONMENT)
DSQUERY
پیشفرض
برای servername
نکات (NOTES)
هنگام اتصال به یک سرور پایگاه داده Sybase، استفاده از پروتکل TDS 5.0 الزامی است. هنگام اتصال به سرور پایگاه داده Microsoft SQL Server 2000، پروتکل TDS 7 (یا بالاتر) مورد نیاز است.
شرکتهای
Sybase و Microsoft
نگارشهای
متفاوتی از
بخش bcp
پروتکل TDS 4.2 را
تعریف
کردهاند.
از آنجا که FreeTDS
راهی برای
تشخیص نوع
سرور
متصلشده
ندارد،
freebcp از
نسخه 4.2
پروتکل TDS
پشتیبانی
نمیکند.
تاریخچه (HISTORY)
freebcp
نخستین بار
در FreeTDS 0.60 ظاهر
شد.
نویسندگان (AUTHORS)
ابزار
freebcp توسط
Bill Thompson
⟨thompbil@exchange.uk.ml.com⟩
نوشته شده
است.
اشکالات (BUGS)
در حال
حاضر هیچ
پشتیبانی
از انواع
دادههای
متنی (text data types) در
freebcp
هنگامی که SQL Server
2000 سرور هدف
باشد وجود
ندارد.
| March 25, 2015 | FreeTDS 1.5.19 |