سلام . من یه برنامه sql server 2000 نوشتم . میخوام تحت شبکش کنم چکار کنم ؟
سرویس دهنده / سرویس گیرنده باید باشه یا نه فقط بانک باید تو سرور باشه ؟
بیشتر کار کاربران جستجو و گزارشگیری.
لطفا کمکم کنید
Printable View
سلام . من یه برنامه sql server 2000 نوشتم . میخوام تحت شبکش کنم چکار کنم ؟
سرویس دهنده / سرویس گیرنده باید باشه یا نه فقط بانک باید تو سرور باشه ؟
بیشتر کار کاربران جستجو و گزارشگیری.
لطفا کمکم کنید
منظورتون اینه که یه برنامه نوشتید که از SQL Server 2000 استفاده میکنه.نقل قول:
من یه برنامه sql server 2000 نوشتم
Connection String رو درست کنیدمیشه تحت شبکه.نقل قول:
میخوام تحت شبکش کنم چکار کنم ؟
آره
میشه توضیح بدین .
چجوری درست کنم بعدشم مدیریت بانک رو خود sql انجام میده یا نه به عهده منه یعنی وقتی یه کاربر داره با یه رکورد رو ویرایش میکنه کاربر دیگه ای قادر به حذف و ویرایش اون نباشه و امثال اینها.
کامل متوجه نشدم ولی اگه اینکارو بکنم دیگه تمامه ؟؟؟؟؟؟
پس مدیریت بانک چی ؟؟؟؟؟ یعنی یه نسخه از برنامه رو روی سیستمهای تحت شبکه نصب کنم.
نیاز نیست دو نسخه درست کنم یکی کلاینت یکی سرور .
اصلا کتابی با عنوان delphi 7 و sqlserver 200 نیست ؟
سلام.ببین شما یک نسخه کامل از Sql server رو روی سرورت نصب میکنی و دیتابیس ها رو روی اون سوار میکنی. بعد روی کلاینتها نسخه msde رو نصب میکنی. بعد از اون فقط در داخل برنامه ات یک منو قرار میدی که بتونی این کانکشن استرینگ رو درست کنه.در داخل اون برای کاربرها مشخص میکنی که به جای سرور خودش از سروری که مشخص کردی استفاده کنه .
برای کنترل دیتابیس دیگه باید زحمتش رو خودت بکشی.اگر قرار بود فقط با همین مورد برنامه تحت شبکه بشه این همه پست اینجا ایجاد نمی شد.تمامی اینها رو خود شما باید کنترل کنی.
موفق باشید.
ممنون
جریان msde چیه ؟؟ کنترل داده ها چجوریه ؟
پس فقط یه نرم افزار مینویسیم کلایت / سرور نمیخواد نه ؟
لطفا بیشتر توضیح بدین یا اگه کتابی در این مورد هست معرفی کنید
لزومی نداره MSDE را روی کلاینت ها نصب کنید. بر روی کلاینت ها باید فایل های مربوط به Client Connectivity نصب باشه که معمولا روی خود ویندوز نصب هست و عملا شما نیازی ندارید چیزی روی کلاینت ها خودتون نصب کنید.نقل قول:
بعد روی کلاینتها نسخه msde رو نصب میکنی.
خیلی ممنون پس فقط رو سرور sql server 2000 developer رو نصب کنم.
نگفتین من برای مدیریت داده ها باید دوتا برنامه بنویسم یا نه ؟ یعنی یه برنامه که برنامه خودم بعد یه برنامه دیگه هم باید بنویسم برای کنترل داده ها و روی سرور باشه ؟؟؟؟؟
لطفا کمکم کنید من تو کار با بانکها خیلی تازه کارم فقط با اکسس کار کردم
معنی "مدیریت داده ها" چی هست؟نقل قول:
نگفتین من برای مدیریت داده ها باید دوتا برنامه بنویسم یا نه ؟
کاربر از طریق برنامه شما در سمت کلاینت دستورهایی برای کار با داده ها در سمت سرور یا درخواست داده ها به سرور بانک اطلاعاتی ارسال میکنه، سرور هم داده های درخواست شده را به کلاینت می فرسته، و کلاینت داده ها را به شکل مناسب به کاربر نمایش میده.
به همراه SQL Server بر روی سرور نرم افزاری هم برای مدیریت بانک های اطلاعاتی موجود در سرور نصب میشه که از طریق آن می تونید SQL Server و بانک های اطلاعاتی خودتون را پیکربندی کنید.
خیلی ممنون
منظورم از مدیریت داده ها اینه که مثلا وقتی یک کاربر داره یه رکورد رو ویرایش میکنه کاربر دیگه نتونه اون رکورد رو حذف یا ویرایش کنه و امثال اینها .
پس من 2 تا نرم افزار باید بنویسم ؟ نرم افزاری که برای کاربرا هست رو فقط conectionstring رو درست کنم ؟
اون نرم افزار که رو سرور نصب میشه چی ؟
ببخشید من اینهمه سوال میکنم .
راستی کتابی در این مورد نیست مثلا با عنوان delphi و sql server
اینها را از طریق نرم افزار کلاینتی که می نویسید می تونید اعمال کنید. مثلا خصوصیت LockType در کامپوننت های ADO برای همین موردی هست که در بالا بهش اشاره کردید.نقل قول:
منظورم از مدیریت داده ها اینه که مثلا وقتی یک کاربر داره یه رکورد رو ویرایش میکنه کاربر دیگه نتونه اون رکورد رو حذف یا ویرایش کنه و امثال اینها .
برای کار شما فقط یک نرم افزار نیاز هست. اون هم نرم افزار کلاینت هست. در سمت سرور هم شما SQL Server را نصب می کنید. همین.نقل قول:
پس من 2 تا نرم افزار باید بنویسم ؟ نرم افزاری که برای کاربرا هست رو فقط conectionstring رو درست کنم ؟
اون نرم افزار که رو سرور نصب میشه چی ؟
توی تمام کتاب های آموزش دلفی بخشی برای کار با بانک های اطلاعاتی پیدا میشه. اون بخش ها را مطالعه کنید. برای آشنایی با SQL Server و نحوه عملکرد آن هم باید کتاب های آموزش SQL Server را مطالعه کنید. مفاهیم اولیه کار با بانک های داده و انواع معماری های نرم افزاری که برای این کار استفاده میشند معمولا در همون کتاب های دلفی بطور مختصر توضیح داده میشند، ولی برای توضیحات مفصل تر باید به کتاب هایی که بطور خاص درباره طراحی و مدیریت بانک های اطلاعاتی، یا تکنولوژی های ارتباط با بانک اطلاعاتی، یا معماری نرم افزار بحث می کنند، مراجعه کنیدنقل قول:
راستی کتابی در این مورد نیست مثلا با عنوان delphi و sql server
خیلی خیلی ممنون .
خوب پس اون نرم افزار که گفتین رو سرور نصب میشه چیه ؟
من یه کتاب دارم که قسمتی از اون مربوط به ADO/Access ولی در مورد شبکش چیزی نگفته . البته dbexpress و datasnap رو توضیح داده نیاز به خوندن اینا که ندارم نه ؟؟
[QUOTE=علی کشاورز;515423]
به همراه SQL Server بر روی سرور نرم افزاری هم برای مدیریت بانک های اطلاعاتی موجود در سرور نصب میشه که از طریق آن می تونید SQL Server و بانک های اطلاعاتی خودتون را پیکربندی کنید.[/QUOTE
اون نرم افزار چیه ؟
این بخشی از بسته نرم افزاری SQL Server هست. شما نمی سازیدش، خودش با SQL Server نصب میشه. در SQL Server 2000 اسمش هست Enterprise Manager و در SQL Server 2005 اسمش هست Management Studio. به همراه SQL Server علاوه بر Database Engine و Management Studio نرم افزارها و سرویس های دیگه ایی هم نصب میشه که برای امور مختلفی استفاده میشند. می تونید با تهیه یک کتاب درباره SQL Server با آنها آشنا بشید.نقل قول:
اون نرم افزار چیه ؟
خیلی خیلی ممنون لطف کردین
من کتاب sql server 2000 رو دارم مال جعفر نژاد قومی خوبه ؟
خوب فقط یه مشکل هست اونم تنظیمات دلفی و برنامه برای تحت شبکه شدنه.
اگه قبلا بحث شده میشه لینک مطلب رو بدین.
ممنون
نمی دونم.نقل قول:
من کتاب sql server 2000 رو دارم مال جعفر نژاد قومی خوبه ؟
در همین بخش ConnectionString را جستجو کنید.نقل قول:
خوب فقط یه مشکل هست اونم تنظیمات دلفی و برنامه برای تحت شبکه شدنه.
اگه قبلا بحث شده میشه لینک مطلب رو بدین.
سلام به همگی من شبکه در دلفی را خیلی سرچ کردم اما جوابمو نگرفتم.
من برنامه فروشگاهی نوشتم میخوام تحت شبکه اجرا بشه اما میخوام برای شبکه یک فایل متنی بسازم که AdoConection من اطلاعات را از این فایل بخونه و بر نامه اجرا بشه هدف من اینه که دیگه نیاز به ساخت برنامه Client/Server نباشه فقط در این فایل متنی Ip کامپیوتر سرور را تایپ کنم و اطلاعات از دیتا بیس کامپیوتر Server خونده بشه در این فایل من میخوام با تغییر Data Source اطلاعات روی کامپیوتر سرور یا هر جایی بخوام اجرا بشه
من این روش را دیدم حالا می خوام بدونم ایا روش درستی هست یا نه اگر نیست برای شبکه چون اصلا کار نکردم باید چکار انجام بدهم.
من این روش را تست کردم یعنی اطلاعات را از فایل خوندم در قسمت ConectionString ریختم بعد جدول هام را خاصیت اکتیو را true کردم اما بازم نشد باید چه عملی انجام دهم در SQL هم نیازی هست تغییری بدهم.؟
خب اینی که نوشتید خودش یعنی یک برنامه Client\Server، حالا منظور شما از اینکه "نیاز به ساخت برنامه Client/Server نباشه" را متوجه نمیشم!نقل قول:
اما میخوام برای شبکه یک فایل متنی بسازم که AdoConection من اطلاعات را از این فایل بخونه و بر نامه اجرا بشه هدف من اینه که دیگه نیاز به ساخت برنامه Client/Server نباشه فقط در این فایل متنی Ip کامپیوتر سرور را تایپ کنم و اطلاعات از دیتا بیس کامپیوتر Server خونده بشه در این فایل من میخوام با تغییر Data Source اطلاعات روی کامپیوتر سرور یا هر جایی بخوام اجرا بشه
با سلام.
من درست منظور خودما نرسوندم منظور من اين بود كه برنامه ايي نميخوام كه دوتا Setup داشته باشه شبيه به نرم افزار هايي از قبيل Easy Cafe كه در كافي نت ها استفاده ميشه اينجور نمي خوام باشه كه براي كامپيوتر سرور نرم افزار سرور و براي كلاينتها نسخه كلاينت نصب بشه.
اگرميشه من را در نحو اجراي فايل متني كه بتونم فقط با دادن ip سرور مشخص كنم كدام كامپيوتر من سرور هست راهنمايي كنيد. براي اجراي اين كار اگر توضيحاتي به من بدهيد ممنون ميشم.
در برنامه های Client\Server مبتنی بر بانک اطلاعاتی، شما فقط برنامه کلاینت را می نویسید، در سمت سرور برنامه مدیریت بانک اطلاعاتی قرار میگیره (مثلا MS SQL Server, MySQL, Oracle و...). پس برنامه شما فقط یک Setup داره، البته برنامه مدیریت بانک اطلاعاتی هم باید روی سرور نصب باشه. دیگه نیازی نیست که شما هم یک برنامه جداگانه برای سرور بنویسید و روی سرور نصب کنید.نقل قول:
من درست منظور خودما نرسوندم منظور من اين بود كه برنامه ايي نميخوام كه دوتا Setup داشته باشه
سلام ممنون از راهنمایی.
من کارهایی که انجام دادم را میذارم ببینید من برای رفع اشکال کارم باید چه کارهایی انجام دهم. من در Data Madule در قسمت Form Create این کد ها را نوشتم
procedure TDm.DataModuleCreate(Sender: TObject);
var
s: textfile;
a:WideString;
begin
AssignFile(s,'a.txt');
Reset(s);
Readln(s,a);
ADOConnection1.ConnectionString := a;
ADOConnection1.LoginPrompt := false;
ADOConnection1.Connected := true;
TMoshtari.Connection := ADOConnection1;
TMoshtari.Active := True;
CloseFile(s);
end;
ایا با این روش فایل متنی من که در فولدری که برنامه نصب می شود وجود دارد خوانده می شود؟ آیا جدول مشتری درست ارتباط پیدا می کند؟ و سوال آخر اگر IP قسمت WorkStation Idفایل متنی را تغییر دهم روی کامپیوتر سرور برنامه اجرا می شود؟
متن فایل متنی را میذارم ببینید اشکال دارد یا خیر؟
Provider=SQLOLEDB.1;
Integrated Security=SSPI;
Persist Security Info=False;
Initial Catalog=Etedali;
Use Procedure for Prepare=1;
Auto Translate=True;
Packet Size=4096;
Workstation ID=SONY-N395E;
Use Encryption for Data=False;
Tag with column collation when possible=False
لطفا چون من اصلا شبکه را کار نکردم همه اشکالات کارم را بگید و اگر امکان داره راهنمایی کنید تا برطرف کنم.
با Readln فقط خط اول فایل متنی خوانده میشه. نیازی نیست از روش های قدیمی Trubo Pascal برای خواندن فایل استفاده کنید، روش راحتتر و مناسب تر:نقل قول:
ایا با این روش فایل متنی من که در فولدری که برنامه نصب می شود وجود دارد خوانده می شود؟
var
CS : TStringList;
begin
CS := TStringList.Create;
try
CS.LoadFromFile('a.txt');
AdoConnection1.ConnectionString := CS.Text;
finally
CS.Free;
end;
end;
ٌWorkStation ID خصوصیت مهمی نیست. شما می تونید حتی حذفش کنید. برای ارتباط با سرور، باید آدرس سرور و نام Database ایی که می خواید بهش وصل بشید، و Username\Password مربوطه را داشته باشید.نقل قول:
اگر IP قسمت WorkStation Idفایل متنی را تغییر دهم روی کامپیوتر سرور برنامه اجرا می شود؟
اگر سرور شما با کامپیوترهای کلاینت در یک Work Group باشند، فقط نام سرور کفایت میکنه (اگر برای MS SQL Server نصب آن اسمی گذاشتید، نام سرور + نام MS SQL Server، در غیر اینصورت، فقط نام کامپیوتر سرور). اگر در یک Work Group نیستند، آدرس IP سرور و نام MS SQL Server.
به نظر میاد در این ConnectiString ایی که شما گذاشتید، نام و آدرس سرور قرار داده نشده؛ همچنین نوع اعتبارسنجی کاربر Windows Authentication هست. در این حالت، باید به ازاء هر کاربری که به سرور وصل میشه، یک Username در ویندوز کامپیوتر سرور ایجاد کنید. برای پرهیز از اینکار، حالت Authentication را به SQL Server تغییر بدید. در این صورت، برای هر کاربر باید در خود SQL Server یک username\password تعریف کنید تا بتونه به سرور متصل بشه. این username\password هم باید در ConnectionString ذکر بشه.
می تونید یک بار با استفاده از AdoConnection به SQL Server موجود در سیستم خودتون وصل بشید و در دایالوگ باکس مربوطه مشخصات را درست وارد کنید، بعد ConnectionString را در سورس فایل مربوطه Copy\Paste کنید و بجای نام سرور و Username\Passowrd برای هر کلاینت مقادیر مناسب را بنویسید.
در این زمینه زیاد بحث شده، حتی راهنماهای قدم به قدم هم در سایت موجود هست.
سلام به همه دوستان.
با راهنمايي هاي آقاي كشاورز من مشكلم كاملا حل شد اما دوباره براي من يه سوالي پيش اومد اينكه من اگر در برنامه ايي فرمي داشته باشم به نام ثبت كالا كه دو كاربر به صورت همزمان وارد اين قسمت شده و شروع به وارد كردن اطلاعات در Edit ها بشوند وقتي كه دكمه ذخيره را ميزنند تا ديتا بيس در حالت insert برود آيا مشكلي پيش نمياد؟ اگر مياد چه راه حلي پيشنهاد مي كنيد؟
در همین بخش LockType را جستجو کنید.نقل قول:
اگر در برنامه ايي فرمي داشته باشم به نام ثبت كالا كه دو كاربر به صورت همزمان وارد اين قسمت شده و شروع به وارد كردن اطلاعات در Edit ها بشوند وقتي كه دكمه ذخيره را ميزنند تا ديتا بيس در حالت insert برود آيا مشكلي پيش نمياد؟ اگر مياد چه راه حلي پيشنهاد مي كنيد؟
در صفحه زیر دنبال Microsoft SQL Server 2008 Native Client بگردید، و از لینک های داده شده، دانلودش کنید.نقل قول:
میدونم پست قدیمیه اما Client Connectivity رو چجوری میشه جدا نصب کرد؟
http://www.microsoft.com/en-us/downl....aspx?id=16177
سلام
من می خوام برنامه ای که با دلفی نوشتم ، sql آن رو از هاست بخونم ، دیتابیسش تحت شبکه باشه ، میشه راهنمایم کنید؟
من Sql روی هاستم هست!
ADOConnection1 که هست رو چطوری تعریف کنم و data source &data table ها رو چطوری مقدار دهی کنم؟
اگر هاست شما امکان ارتباط به بانک اطلاعات رو بده فقط کافیه که آدرس آی پی هاست رو به جای نام سرور وارد کرده و به راحتی متصل شوید.
البته اکثر هاست های اشتراکی چنین امکانی رو فراهم نکرده و باید از سرورهای مجازی و اختصاصی که امکان ارتباط به بانک اطلاعات رو میدن رو استفاده کرد.
من کانکش استرینگ رو تونستم set کنم، حالا ado tabale va data source رو چطوری activ کنم؟
datasource که نیازی به اکتیو کردن نداره فقط باید ado table رو بهش وصل کنی و هر جا که دوست داشتی (هنگام لود فرم یا بعد از کانکت شدن کانکشن) بنویسی:
adotable1.active:=true;
با سلام
خواستم از دوست خوبم آقاي كشاورز بپرسم استفاده از كامپوننت Sdac براي شبكه و ... بهتر از ado نيست؟
ُSDAC با توجه به اینکه برای SQL Server بهینه سازی شده، قابلیت های بیشتری از SQL Server را نسبت به ADO در اختیار برنامه نویس قرار میده، و سرعتش هم تا حدودی بهتر از ADO هست.نقل قول:
استفاده از كامپوننت Sdac براي شبكه و ... بهتر از ado نيست؟