View Full Version : سوال: چند سوال در visual studio instaler
masoud sh
دوشنبه 12 مرداد 1394, 20:25 عصر
سلام به همگی
واقعا از بس تو این سایت دنبال سوالام گشتم دارم خل میشم:افسرده:
اگه میشه یه راهنمایی کلی اینجا برام بکنید
من با اینستالر خود ویژوال ینی visual studio instaler ستاپ برای برنامه هام میسازم انصافا هم خوبه و جوابگو هس
اما مشکلم اینه که تو بررسی پیشنیازا فقط اسکیوال اکسپرس داره ولی من از نسخه کامل اسکیوال برای دیتابیسم استفاده کردم و نمیخوام اکسپرس باشه
طبق جستجویی که تو سایت کردم فهمیدم میشه اسکیوالا سایلنت نصب کرد ولی نفهمیدم چطوری تو ستاپ برنامه ام اولا بررسی بشه که رو سیستم مقصد اسکیوال هست یا نه، دوما نصب سایلنت اسکیوالا کجای ستاپم جا بدم تا خودکار انجام بشه
و در اخر اینکه حالا جدای از نصب اسکیوال باید دیتابیس برنامه اتچ هم بشه و اون هم باید توی مراحل ستاپ انجام بشه و اونم نمیدونم چطوریه:گریه:
میدونم الان میگید چقدر نفهمه:گریه: ولی خب باید از یه جایی شروع به یادگیری کرد و همه هم از صفر شروع کردند
ژیار رحیمی
دوشنبه 12 مرداد 1394, 20:40 عصر
سلام دوست گرامی .تا انجایی که من با Installer ویژوال استودیو کار کردم امکاناتی محدود داره و با این نوع Installer نمیشه پیش نیازای سیستم(sql server) رو بصورت سایلت نصب کرد.اولا به پیشنهاد من از sql server express که حجم کمتری داره و زودتر نصب میشه و فضای کمتری رو درایو میگیره استفاده کن.من خودم برای نصب و Setup سازی و پیش نیازای نرم افزاری از SetupFactory اسفاده میکنم به نظر من کارباهاش راحتر است .البته نرم افزارهای دیگه ی مثل Installsheild و.. وجود دارند که بعضی هاشون به مراتب در ساخت Setup پروژه قویترا.نگران Attach کردن دیتابیس نباش خودت میتونی با چن خط کدنویسی ببینی دیتابیس Attachشده هست یا نه اگر نیست با کد Attach کنی
masoud sh
سه شنبه 13 مرداد 1394, 10:40 صبح
نگران Attach کردن دیتابیس نباش خودت میتونی با چن خط کدنویسی ببینی دیتابیس Attachشده هست یا نه اگر نیست با کد Attach کنی
قبل هرچیز ممنون از توجه و جوابتون
از لحاظ حجم که خب اگه همون اسکیوال هم همه فیچرهاش نصب نشه و فقط انجینش نصب شه حجم زیادی نمیگیره و کار را هم راه میندازه چون من که نمیخوام تو سیستم مقصد با اسکیوال کار کنم فقط میخوام دستوراتم اجرا بشه که وظیفه انجینه
در رابطه با اتچ کردن هم مشکل من همینه که دقیقا نمیدونم چه کدهایی و کجا باید بنویسم که این کارایی که گفتید انجام بشه اگه میشه بیشتر راهنماییم کنید یا اگه اموزشی دارید بهم بدید
mehdi.safavie
چهارشنبه 14 مرداد 1394, 17:30 عصر
درود دوست من
عزیز تو قسمت اولین فرم برنامه که باز میشه و تو قسمت Form Load این کد ها رو بنویس
توضیح هم توی خود کد ها هست
فقط به جاهای Database Name Table Name Server Name دقت کن که نام های مخصوص برنامه خودت رو بزاری نه این کلمه هایی که تو کد ها من گذاشتم .
'ba in Function Check mikoni ke aya Database e morede nazar vojud dare ya na ( Attach hast ya na )
'tu meghdare bRet age True bargardune yani hast
'Server(hamun Server Name e SQL e ke bishtar in mored estefade mishe .\SQLExPRESS
Public Function Check_DB(ByVal server As String, ByVal database As String) As Boolean
Dim connString As String = ("Data Source=" + (server + ";Initial Catalog=master;Integrated Security=True;"))
Dim cmdText As String = _
("select * from master.dbo.sysdatabases where name='" + (database + "'"))
Dim bRet As Boolean = False
Using sqlConnection As SqlConnection = New SqlConnection(connString)
sqlConnection.Open()
Using sqlCmd As SqlCommand = New SqlCommand(cmdText, sqlConnection)
Using reader As SqlDataReader = sqlCmd.ExecuteReader
bRet = reader.HasRows
End Using
End Using
End Using
Return bRet
End Function
' Code Attach Kardan
Dim conn As SqlClient.SqlConnection = New SqlClient.SqlConnection
Dim cmd As New SqlClient.SqlCommand()
Dim ConnectionString As String = ("Data Source=.\SQLExpress;Integrated Security=True;Initial Catalog=master")
conn = New SqlClient.SqlConnection
conn.ConnectionString = ConnectionString
conn.Open() 'Open connection
Dim sqlDetech As String = ("EXEC sp_attach_db @dbname='" & "Database Name " & "', @filename1='" & (Application.StartupPath & "Addrese File .mdf") & "' , @filename2='" & (Application.StartupPath & "Addrese File.ldf") & "'")
cmd.CommandText = sqlDetech
cmd.Connection = conn
cmd.ExecuteNonQuery()
conn.Close()
' Code De Atach Kardan
Dim conn As SqlClient.SqlConnection = New SqlClient.SqlConnection
Dim cmd As New SqlClient.SqlCommand()
Dim ConnectionString As String = ("Data Source=.\SQLExPRESS;Integrated Security=True;Initial Catalog=master")
conn = New SqlClient.SqlConnection
conn.ConnectionString = ConnectionString
conn.Open() 'Open connection
Dim sqlDetech As String = ("sp_detach_db '" & "Database Name" & "', 'true'")
cmd.CommandText = sqlDetech
cmd.Connection = conn
cmd.ExecuteNonQuery()
با این کد ها کارت رو راه بنداز ، معمولا تو همه پروژه ها با این کد ها کارامون رو راه میندازیم
masoud sh
پنج شنبه 15 مرداد 1394, 13:02 عصر
اقا خیلی خیلی ممنون کلیت کارا فهمیدم
ولی اگه داشتی کد سی شارپشا برام بزار چون تو vb یکم گیج میشم
masoud sh
جمعه 16 مرداد 1394, 13:15 عصر
اقا خودم سی شارپش کردم گفتم بزارم اینجا برا بقیه
//Data Source: Server Name e SQL ya . ya age noskhe express bashe .\SQLEXPRESS
//connection string sahih bad az in kar: @"Data Source=.;Initial Catalog=Data_Base_Name.mdf;Integrated Security=True;"
public Boolean check_db()
{
string connString = "Data Source=.;Initial Catalog=master;Integrated Security=True;";
string cmdText = "select * from master.dbo.sysdatabases where name='Data_Base_Name.mdf'";
Boolean result = false;
SqlConnection con = new SqlConnection();
con.ConnectionString = connString;
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;
SqlDataReader reader = cmd.ExecuteReader();
result = reader.HasRows;
con.Close();
return result;
}
public void atach_db()//attach
{
string connString = @"Data Source=.;Integrated Security=True;Initial Catalog=master";
string cmdText = "EXEC sp_attach_db @dbname='" + "Data_Base_Name.mdf" + "', @filename1='" + Application.StartupPath + @"\DB\Data_Base_Name.mdf" + "' , @filename2='" + Application.StartupPath + @"\DB\Data_Base_Name_log.ldf" + "'";
SqlConnection con = new SqlConnection();
con.ConnectionString = connString;
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
public void detach_db() //detach
{
string connString = @"Data Source=.;Integrated Security=True;Initial Catalog=master";
string cmdText = "sp_detach_db '" + "Data_Base_Name.mdf" + "', 'true'";
SqlConnection con = new SqlConnection();
con.ConnectionString = connString;
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
masoud sh
شنبه 17 مرداد 1394, 18:00 عصر
دوستانی که کمکم کردید میشه این سوالم را هم ج بدید؟؟
اتچ کردن دیتابیس را یاد گرفتم و حواب هم داد البته تو درایو ویندوز ریدانلی میشد که با یه دستور حل شد
حالا میخوام اگه ممکنه یکی روش ساخت دیتابیس تو مقصد با استفاده از اسکریپت را توضیح بده
ممنون میشم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.