ورود

View Full Version : استفاده از ديتابيس SQL در شبكه داخلي



vahid_esp
دوشنبه 02 شهریور 1388, 21:55 عصر
سلام دوستان.
من يه برنامه نوشتم كه براي ذخيره اطلاعات از ديتابيس SQL استفاده كردم. حالا مي خوام اين برنامه رو تغيير بدم طوري كه در يه شبكه داخلي مثل يك اداره از اين برنامه استفاده بشه. منظورم اينكه تمام كاربران از يك ديتابيس استفاده كنند كه هر كدومشون محدودتي در ديتابيس دارند. مشكل اصلي من نوشتن برنامه تحت شبكه است.
براي اين كار اطلاعاتي ندارم. لطفا منو راهنمايي كنيد.

majid_vb_2008
دوشنبه 02 شهریور 1388, 23:02 عصر
در هنگام ساخت كانكشن بجاي مسير فايل از آي پي سيستم سرورت استفاده كن


con = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\Data.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")

vahid_esp
سه شنبه 03 شهریور 1388, 00:55 صبح
ميشه يه خورده كاملتر توضيح بدي؟

anooshiran
سه شنبه 03 شهریور 1388, 01:22 صبح
سلام دوست عزيز

به كد زير توجه كنيد




Public Const Server As String = "LocalHost"
Public Const conString As String = _
"Server=" & Server & ";" & _
"Integrated Security=SSPI;" & _
"DataBase="
Public sqlCon As New SqlClient.SqlConnection(conString)



در اينجا server ما localhodt نعريف شده . بنابر اين امكان استفاده از sqlserver در حالت local هست
حال به كد زير توجه كن



Public Const Server As String = "YourServerName"
Public Const conString As String = _
"Server=" & Server & ";" & _
"Integrated Security=SSPI;" & _
"DataBase="
Public sqlCon As New SqlClient.SqlConnection(conString)



حال server را معادل نام مااشيني كه به عنوان server بكار مي رود قرار داده ايم. بنابر اين برنامه شما اطلاعات را از ديتابيس server مي گيرد.
البته بايد به مسائل ديگري هم توجه كنيد كه اگر نياز داشتيد به آنها پاسخ خواهم داد

maysam1984
سه شنبه 03 شهریور 1388, 01:24 صبح
تو کانکشن استرینگ باید آدرس اون سرور که دیتابیس روش هست رو بدید.
server=$ServerNameOrIPAddress$
:چشمک:

a.maleki
سه شنبه 03 شهریور 1388, 14:42 عصر
دوست عزیز بر حسب نوع ورژنی که saql هست (2005 ) باید یه تنظیماتی انجام بدی که اگه تو همین سایت بگردی اطلاعات کافی می تونی پیدا کنی

vahid_esp
سه شنبه 03 شهریور 1388, 16:01 عصر
سلام دوست عزيز

به كد زير توجه كنيد




Public Const Server As String = "LocalHost"
Public Const conString As String = _
"Server=" & Server & ";" & _
"Integrated Security=SSPI;" & _
"DataBase="
Public sqlCon As New SqlClient.SqlConnection(conString)



در اينجا server ما localhodt نعريف شده . بنابر اين امكان استفاده از sqlserver در حالت local هست
حال به كد زير توجه كن



Public Const Server As String = "YourServerName"
Public Const conString As String = _
"Server=" & Server & ";" & _
"Integrated Security=SSPI;" & _
"DataBase="
Public sqlCon As New SqlClient.SqlConnection(conString)



حال server را معادل نام مااشيني كه به عنوان server بكار مي رود قرار داده ايم. بنابر اين برنامه شما اطلاعات را از ديتابيس server مي گيرد.
البته بايد به مسائل ديگري هم توجه كنيد كه اگر نياز داشتيد به آنها پاسخ خواهم داد


از راهنمايي تون ممنونم. اگه ميشه مسايل ديگه اي كه گفتين رو هم مطرح كنيد ممنون ميشم.


اين كد اتصال به ديتابيسمه:

Public Sub New()
'Build the SQL connection string and initialize the Connection object
Connection = New SqlConnection("Data Source=.\SQLEXPRESS" & ";" & "AttachDbFilename=" & Application.StartupPath & "\DataBases\PowerPlantDB.mdf" & ";" & "Integrated Security=True" & ";" & "Connect Timeout=30" & ";" & "User Instance=True")
End Sub

anooshiran
سه شنبه 03 شهریور 1388, 18:01 عصر
دوست من اين كدها را اول امتحان كن ببين به چه مشكلي ميخوري. اگر به هر مشكلي خوردي بگو تا قدم به قدم حلش كنيم.

vahid_esp
سه شنبه 03 شهریور 1388, 23:45 عصر
من يه هفته اي به برنامه ام دست رسي ندارم. (مسافرتم!)
در اولين فرست امتحان مي كنم.
فقط يه سوال.
در جاي Server= چي بنويسم؟ و database=؟

mn_zandy63
جمعه 06 شهریور 1388, 05:56 صبح
شما دیگه نباید از حالت AttachDbFilename استفاده کنی،
باید دیتابیست رو با در هنگام نصب برنامه روی سرور Attach کنی و بعد در کلاینت هات، مقدار Server رو برابر IP یا نام سرور و مقدار Database رو نام دیتابیست قرار بدی.

bashiry
جمعه 06 شهریور 1388, 11:08 صبح
من خودم به sqlserver2000 روی یک شبکه دارم کار می کنم

کانکشن استرینگی که نوشتم به این صورته:


connectionString="Data Source=192.168.100.1;Initial Catalog=Khadamat;User ID=Bashiri;Password=123456"


اگه بخواهی روی سیستم های دیگه هم به دیتابیس دسترسی داشته باشی فقط کافیه آی پی رو به آی پی سرور تغییر بدی.
فراموش نشه که برای دیتابیس باید login ساخته باشی تا با loginName که در اینجا Bashiri هست وارد بشی.

corona
جمعه 06 شهریور 1388, 22:01 عصر
دوستان من از sqlserver 2008 استفاده می کنم . وقتی یک کاربر جدید از توی new login میسازم بعد از سروز دیسکانکت که میشم می خوام با اون کاربر login کنم خطای زیر رو میده
login failed for user mohammad .the user is not associated with a trusted sql server connection
کسی می دونه مشکل چیه ؟

mn_zandy63
شنبه 07 شهریور 1388, 06:09 صبح
دوستان من از sqlserver 2008 استفاده می کنم . وقتی یک کاربر جدید از توی new login میسازم بعد از سروز دیسکانکت که میشم می خوام با اون کاربر login کنم خطای زیر رو میده
login failed for user mohammad .the user is not associated with a trusted sql server connection
کسی می دونه مشکل چیه ؟

شما وقتی که SQL Server رو نصب میکردید تنظیم کردید که به صورت Windows Authentication باشه. باید تغییرش بدید به حالت Mixed Mode.
اگه متن خطایی که اینجا نوشتید رو google کرده بودید، دومین لینک این بود:
http://support.microsoft.com/kb/555332
اگه اطلاعات بیشتر لازم داشتی به همین لینک سر بزن.
موفق باشی.