PDA

View Full Version : مشکل در اتصال به sql server



S_VB.max
شنبه 25 فروردین 1386, 12:07 عصر
سلام

وقتی برنامه ام را روی کامپیوتر مقصد نصب کردم می خوام بدونم چجوری باید نام سرور را بدست آورم تا اونا به کانکشن استرینگ اضافه کنم ؟
احتمالا باید نقطه و شایدم localhost را بنویسم اما چرا روی کامپیوتر خودم کار نمی کند؟
من در کانکشن استرینگ زیر وقتی برای دیتاسورس نام سرور را می نویسم درست کار می کند اما وقتی نقطه میذارم خطا میده لطفا راهنمایی کنید مشکل از کجاست ؟
زبان برنامه نویسی Vb6

Connection String

con.Open "Provider=SQLOLEDB; data Source=.;Initial Catalog=Northwind;User Id=sa;Password="

Error:

Run-time error '-2147647259 (80004005)'
Login failed for user 'sa'. Reason:Not associated with a trusted SQL Server connection .

DonetKarvb
شنبه 25 فروردین 1386, 12:23 عصر
شما وقتی که از عبارات (local) , . (تقطه) و LocalHost برای نام سرور استفاده مکینید سروری که استفاده میشود همان سرور Default روی کامپیوتر خودتان است.
شما دارید به صورت SQL Authentication وارد SQL Server میشوید. لذا باید در تنظیمات سرور این گونه ورود فعال شده باشد. از سرور پراپرتیز بگیرید و از منو Security گزینه SQL Server And Windows Authentication را فعال نمایید.
اگر بخواهید به سروری خارج از کامپیوتر خود کانکت شوید باید در قسمت نام سرور نام کامپیوتر مقابل و یا IP آن را وارد کنید. در سرور دوم دو گزینه Remote Connection و SQl Authentication نیز باید فعال باشد.

S_VB.max
شنبه 25 فروردین 1386, 13:06 عصر
ممنون از توجه
روش Login در پنجره Properties در حالت SQl Server and Windows است اما باز هم مشکل پابرجاست
وقتی عبارت local و یا localhost را می نویسم پیغام می ده SQl server وجود ندارد و اگر نقطه را بنویسم اون پیغام بالایی را می ده
اضافه کنم که بانک برنامه هم روی سیستم محلی قرار دارد

DonetKarvb
شنبه 25 فروردین 1386, 13:19 عصر
از چه ورژن و ویرایش استفاده میکنید؟
هنگام اتصال به بانک از طریق ManegmentStudio و یا Enterprise manager نام سرور را چه وارد میکنید؟

یه نکته ای رو عرض کنم هرچند که به حل مسئله کمک نمیکنه. زمانی که میخواهید از عبارت لوکال برای نام سرور استفاده کنید . این عبارت باید حتما" داخل پرانتز قرار گیرد به این صورت : (local)

S_VB.max
شنبه 25 فروردین 1386, 14:53 عصر
SQL Server 2000 Personal Edition
من در کانکشن استرینگ نام سرور را SHAYGAN\MYSQLSERVER می نویسم (همون چیزی که در Service Manager و در پنجره کنسول نوشته شده ) و بخوبی به بانک وصل می شود
عبارت Local را داخل پرانتز نوشتم پیغام " SQl serevr وجود ندارد" را نداد ، حالا اون پیغام بالا را می دهد

DonetKarvb
شنبه 25 فروردین 1386, 16:09 عصر
ببینید شما هنگام نصب از Default Instance استفاده نکرده اید چون اگر استفاده میکردید با شیوه هایی که در پستهای قبل ذکر شده بود میتونستید لوگین کنید. و اما حالا چکار باید بکنید.
شما میتونید به صورت زیر لوگین کنید:
.\MYSQLSERVER
(Local)\MYSQLSERVER
LocalHost\MYSQLSERVER


شما همزمان میتوانید چند instance (نمونه) از SQL Server رو روی سیستمتمون نصب کنید. فرضا" SQL Server 2000 developer Edition و دیگری SQl Server 2000 Standard Edition و حتی SQl Server 2005 Personal Edition ,....
حالا تنها و تنها یکیشون میتونه Default باشه و حتی میتونه Default Instance نداشته باشید. برای Instance های غیر از Default باید ابتدا نام کامپیوتر و بعد از ان نام instance را بیاورید.
در شبکه هم همینطور است. نام و یا Ip سرور و بعد نام instance.

S_VB.max
شنبه 25 فروردین 1386, 16:50 عصر
خیلی ممنون که کمک کردید
اما برای LocalHost\MYSQLSERVER هنوز پیغام خطا میده که بی خیال این یکی می شوم