sql server数据库,打包与安装,急,重分感谢。

LXXNIIT 2006-10-21 05:34:10
sql server数据库,在项目打包时,怎么一起打包进去,并在安装时,又自动安装打包的数据库,
C#(Windows项目,和web项目皆可)
请高手指教,谢谢!!!!
...全文
655 33 打赏 收藏 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
kbxj406 2006-11-03
  • 打赏
  • 举报
回复
我也在做类似的一个安装程序。
1、数据库的安装。
我首先用是在程序中调用sp_attach_db存储过程来做的,但如果直接在程序中运行sp_attach_db语句会失败;(如果先在express中手动附加一下,然后再分离一下,再在程序中用sp_attach_db语句就不会出错。)不知道手动附加后sql做了什么操作。
后来,我改为用RESTORE DATABASE语句来做,倒没出什么问题。

2、调用别的MSI安装包,我在程序里调用用的是msiexec.exe程序来做。但有问题。
在此问下各位达人,调用别的MSI安装包,有什么别的方法吗?谢谢啊

LZ,我MSN:kbxj406@hotmail.com,可以的话我们交流一下。
LXXNIIT 2006-10-28
  • 打赏
  • 举报
回复
问题还没解决,望高人指点
localway 2006-10-26
  • 打赏
  • 举报
回复
up
lovvver 2006-10-26
  • 打赏
  • 举报
回复
路过,无语
yaoliping 2006-10-26
  • 打赏
  • 举报
回复
UP
lovvver 2006-10-25
  • 打赏
  • 举报
回复
在部署时,登陆sql server,最好用windows系统安全帐户登陆,不要用sa/sapwd以避免设置密码。所以,对于机器上的sqlserver有一个要求,那就是登陆必须是混合认证模式。
chenqian5316 2006-10-25
  • 打赏
  • 举报
回复
对于lihonggen的技术是可以实现的,我的项目部署和打包就是如此
你要保证sql server数据库的用户和你部署时登录的用户名一致
lovvver 2006-10-25
  • 打赏
  • 举报
回复
一般对sqlserver的部署,对MSDE同样可以。
lovvver 2006-10-25
  • 打赏
  • 举报
回复
可以下载我的示例看看
T_SQL语句的执行都是一样的,不同的只是方式和方便程度。
kbxj406 2006-10-25
  • 打赏
  • 举报
回复
用附加法,执行sp_attach_db T_SQL语句怎么样?
lovvver 2006-10-25
  • 打赏
  • 举报
回复
我个人比较倾向于使用还原法,就是把数据库备份,然后在数据库安装包里面把备份文件拷贝到安装机器上去还原。
lovvver 2006-10-25
  • 打赏
  • 举报
回复
部署的方法,一般来说有三中,还原法,附加法,脚本法,具体代码示例见:
www.notsoft.cn/bright/3dbsetup.rar
kbxj406 2006-10-25
  • 打赏
  • 举报
回复
MARK

顺便问下,如何在一个大安装包内,调用其他安装包?
LXXNIIT 2006-10-25
  • 打赏
  • 举报
回复
to lovvver(www.notsoft.cn
这位老大,能把部署的方法说一下吗?谢谢
lovvver 2006-10-25
  • 打赏
  • 举报
回复
对于数据库的三种部署(不是安装数据库)方法:
www.notsoft.cn/bright/3dbsetup.rar
vvresoft 2006-10-25
  • 打赏
  • 举报
回复
顶
LXXNIIT 2006-10-25
  • 打赏
  • 举报
回复
谢谢:zhzuo(秋枫)

sqlProcess.StartInfo.Arguments = string.Format(" -U {0} -P {1} -d {2} -i {3}db.sql",
我在想是不是这里的db.sql生成时有问题,请问生成db.sql时要注意些什么?
marvelstack 2006-10-25
  • 打赏
  • 举报
回复
可以参考这里,
http://blog.csdn.net/zhzuo/archive/2005/05/31/385140.aspx
http://www.microsoft.com/china/msdn/library/langtool/vsdotnet/usvs04j7.mspx?mfr=true
LXXNIIT 2006-10-25
  • 打赏
  • 举报
回复
各位大侠,我现在用执行sql脚本(文件名:db.sql)的方法,打包后,再安装这个数据库,结果在数据据库中,生成了所要安装的数据库,但问题是,安装的数据库中只有系统表,用户表与存储过程,确没生成.请问高手是何缘故.
现在,我把我安装类的创建数据库的代码,贴出来,请大家看看是哪里不对.谢谢
string connstr= String.Format("server={0};uid={1};pwd={2};persist security info=false;packet size=4096",this.Context.Parameters["server"], this.Context.Parameters["user"], this.Context.Parameters["pwd"]);
ExecuteSql(connstr, "master", "CREATE DATABASE " + this.Context.Parameters["dbname"]);
System.Diagnostics.Process sqlProcess = new System.Diagnostics.Process();
sqlProcess.StartInfo.FileName = this.Context.Parameters["targetdir"]+"osql.exe";

sqlProcess.StartInfo.Arguments = string.Format(" -U {0} -P {1} -d {2} -i {3}db.sql", this.Context.Parameters["user"].ToString(), this.Context.Parameters["pwd"].ToString(),this.Context.Parameters["dbname"].ToString(),this.Context.Parameters["targetdir"].ToString());

sqlProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
sqlProcess.Start();
sqlProcess.WaitForExit();
sqlProcess.Close();
System.IO.FileInfo sqlFileInfo =new System.IO.FileInfo(String.Format("{0}db.sql",this.Context.Parameters["targetdir"]));
if (!sqlFileInfo.Exists)

{sqlFileInfo.Delete();}

private void ExecuteSql(string conn,string DatabaseName ,string Sql)
{
SqlConnection myConnection = new SqlConnection(conn);
SqlCommand myCommand = new SqlCommand(Sql,myConnection);
myCommand.Connection.Open();
myCommand.Connection.ChangeDatabase(DatabaseName);


try{myCommand.ExecuteNonQuery();}
finally{ myCommand.Connection.Close();}

}
jetxia 2006-10-24
  • 打赏
  • 举报
回复
我们是用在安装是写了小程序用附加数据库的方法处理数据库的
加载更多回复(13)
代码下载链接: https://pan.quark.cn/s/90fbf78c3289 "1元云购"是一种依托互联网的购物方式,用户仅需投入微小的资金(一般为一元)便有机会赢取高价值商品。此类模式常借助抽奖机制来判定获胜者,从而吸引众多用户加入。"1元云购源代码"是承载该业务流程的程序代码,其用途在于搭建一个完整的1元云购系统。 在构建1元云购源代码的过程中,主要包含以下几个核心技术要点: 1. **数据库架构**:为了有效存储商品详情、用户资料、交易历史及开奖结果,必须设计科学合理的数据库框架。这包括商品数据表、用户信息表、订单记录表和开奖记录表等,确保数据的统一性与完整性。 2. **支付渠道对接**:1元云购平台需与第三方支付服务(例如支付宝、微信支付)进行对接,以实现用户的在线支付操作。这涉及API接口调用、交易状态同步、退款流程管理等环节。 3. **随机数生成策略**:抽奖过程的核心在于公平透明地选定获奖者,通常采用随机数生成策略来实现。该策略需保障每位参与者拥有相等的获奖机会,同时防止欺诈行为。 4. **用户界面开发**:卓越的用户体验是吸引参与者的关键因素。前端页面应兼具视觉吸引力与操作便捷性,清晰展示商品信息、购买步骤、中奖规范等,并提供用户注册、登录、查询订单等功能。 5. **服务器程序设计**:后端系统负责处理用户请求,如管理订单、计算中奖号码、更新数据库信息等。这部分通常采用PHP等服务器端技术实现,需应对并发访问与高负载情形。 6. **安全措施**:1元云购平台可能面临恶意攻击,例如SQL注入、XSS跨站脚本攻击等。因此,源代码需遵循安全编程准则,对用户输入进行过滤与校验,同时运用HTTPS等加密手段保障数据传输安全。 7. **...

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧