sql安装部署

private const string SQL_NAME="sql.sql";

private string sqlPath = string.Empty;
private string serverConn = string.Empty;

ServiceController sqlSer;

private void steupStart()
{
string desPath=string.Empty;
desPath = Directory.GetCurrentDirectory();
sqlPath = desPath+"//"+SQL_NAME;

sqlSer = new ServiceController("MSSQLSERVER");
//如果服务没有在运行中,则运行
if ( sqlSer.Status == ServiceControllerStatus.Stopped )
{
sqlSer.Start();
}
else if( sqlSer.Status == ServiceControllerStatus.Paused )
{
sqlSer.Continue();
}
sqlSer.Dispose();
while( true )
{
sqlSer = new ServiceController("MSSQLSERVER");
if( sqlSer.Status.Equals(ServiceControllerStatus.Running) )
{
sqlSer.Dispose();
break;
}
sqlSer.Dispose();
}
//检测用户名及密码是否正确
SqlConnection conn = new SqlConnection( "Server=" + txtServer.Text.Trim() + ";User id = " + txtUser.Text.Trim() + ";password =" + txtPass.Text.Trim() );
try
{
conn.Open();
conn.Close();
}
catch(Exception ex)
{
MessageBox.Show("错误的用户名或密码" + ex.Message,"提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
Application.Exit();
return;
}
//起用进程
Process sqlpro = new Process();
//设置进程路径
sqlpro.StartInfo.FileName = desPath+"//osql.exe";//string.Format("{0}osql.exe",desPath);
//参数
sqlpro.StartInfo.Arguments = String.Format("-S {0} -U {1} -P {2} -i /"{3}/"",txtServer.Text.Trim(),txtUser.Text.Trim(),txtPass.Text.Trim(),sqlPath);
sqlpro.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

sqlpro.Start();
sqlpro.WaitForExit();
sqlpro.Close();
this.lb.Cursor = System.Windows.Forms.Cursors.Default;
MessageBox.Show("数据安装成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
//steupData.Abort();
            Application.Exit();
}

public static string GetMachineName()
{
RegistryKey CompName = Registry.LocalMachine ;
CompName = CompName.OpenSubKey("Software//Microsoft//Windows NT//CurrentVersion//Winlogon");
return CompName.GetValue("AltDefaultDomainName").ToString();
}

这个是执行你数据库脚本的代码。你自己改改。
sql.sql是你数据库的脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值