WinForm开发(6)——C#/winform程序打包部署时,如何把SQL数据库一起打包进去
打包数据库到安装程序中
方法1. 备份/恢复
先备份数据库:
backup database 数据库 to disk='c:\备份.bak'
将备份文件打包到安装程序中.
在第一次运行程序的时候,进行数据库恢复(或专门做一个系统配置的程序,来控制完成此工作)
restore database 数据库 from disk='c:\备份.bak'
方法2. 分离/附加
注意:这个方法中的分离等于删掉数据库,然后可以再附加,只要数据库版本一样,都能成功附加的。但是为了保险起见,建议尽量不用此方法。使用方法1比较保险。
先分离数据库:
sp_detach_db '数据库名'
将数据文件(.mdf)和日志文件(.ldf)打包到安装程序中
在第一次运行程序的时候,进行数据库附加(或专门做一个系统配置的程序,来控制完成此工作)
sp_attach_db '数据库名','数据文件名(.mdf)','日志文件名(.ldf)'
方法3. 用数据库脚本
生成数据库脚本:
sql200企业管理器
--右键要导出的数据库
--所有任务
--生成SQL脚本
--<常规>里选择"生成全部对象脚本"","在脚本文件中包含说明性标题"选上
--<设置格式>里,将"包含扩展属性",选上
--<选项>中,将"表脚本选项"中的内容全部选择上
--<选项>中,"安全性选项"是决定是否要包含创建数据库及用户权限等的设置,根据你的需要选择
--其他所有的选项保持默认值
--然后确定,将其保存成一个.sql文件
生成数据脚本(借用第三方工具):
SQL Server 数据库SQL脚本导出器1.0
(1) 支持所有数据类型(如binary,text,image)
(2) 支持表结构、索引、所有记录到SQL脚本
(3) 支持数据库、表的浏览
(4) SQL语句的编辑、执行
(5) 可备份数据库、表结构、记录
将脚本文件打包到安装程序中.
在第一次运行程序的时候,执行脚本(或专门做一个系统配置的程序,来控制完成此工作),通过调用isql.exe文件完成.
exec master..xp_cmdshell 'isql /E /i".sql文件"'
也可以直接在程序中调用isql.exe文件.或直接将isql.exe文件集成到程序安装包中
很明确的。
=================================================================
补充
=================================================================
你的sql文件里要先创建数据库,然后再创建表,创建表的时候要往该数据库里创建表。
WinForm开发(6)——C#/winform程序打包部署时,如何把SQL数据库一起打包进去的更多相关文章
- C# Winform打包部署时添加注册表信息实现开机自启动
1.原理:需要开机自启动的程序,需要将其启动程序的路径写到注册表中指定的文件夹下 2. 写入注册表的方式有两种 a.在生成安装程序时配置 b.在程序运行时,动态配置 方法一:使用VS2010自带的打包 ...
- C# Winform打包部署时添加注册表信息实现开机启动
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...
- 【转】C# Winform打包部署时添加注册表信息实现开机启动
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...
- C# Winform打包部署时添加注册表信息实现开机启动(转载)
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表 ...
- .net应用程序安装部署时异常 Error 1001. 在初始化安装时发生异常 System.BadImageFormatException:未能加载文件或程序集 的解决办法【成功解决】
采用.net 4.0框架开发的一个桌面应用程序在某学校的一体机(Windows7的32位操作系统)上做安装部署时抛出异常,安装程序回滚,多次尝试仍不成功. Error 1001. 在初始化安装时发生异 ...
- C# WPF打包部署时添加注册表信息实现开机启动
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 创建安装部署这部分就不用说了,添加安装部署项目后,鼠标右键安装项目-> ...
- winform开发 总结1>winform程序使用线程的必要性,以及正确的使用方式
winform程序中使用线程的必要性: 单线程操作在执行耗时任务时会造成界面假死,带来非常差劲的用户体验,有时候甚至会影响到正常的业务执行,使用多线程做相关操作实属不得已之举. 那么在编写程序之前必须 ...
- 基于 ArcGIS Silverlight API开发的WebGIS应用程序的部署
部署流程概述 在微软的iis服务器上部署基于ArcGIS Silverlight API的应用程序,主要包括以下几个步骤: 1)(可选)部署GIS服务 如果需要将GIS服务也部署在Web服务器上,则 ...
- winform 打包部署
1.使用VS 自带的打包工具,制作winform安装项目 开发环境:VS 2008 Access 操作系统:Windows XP 开发语言:C# 步骤: 第一步:打开开发环境VS2008,新建项目,选 ...
随机推荐
- Unity手机端手势基本操作
主要有单指移动3D物体.单指旋转3D物体.双指缩放3D物体. 基类 using UnityEngine; using System.Collections; /// <summary> / ...
- 阿里云打包成zip格式,批量下载
/** * 从阿里云下载文件 (以附件形式下载) 多个文件进行zip下载 第二种 * @param request * @param response */ @ResponseBody @Reques ...
- python 字符串是否包含某个子字符串
方法如下:以后再整理 if str1 in str2: 包含的话,True if str1.find(str2)>=0: 包含的话,返回第一次出现的位置,没有的话为负数 https://www. ...
- C# 泛型说明
详细说明转 https://www.cnblogs.com/dotnet261010/p/9034594.html 最近项目用到了多个参数的泛型方法,这里说明下泛型的组成: /// <summa ...
- 边双连通分量 jarjan (poj 3177)
大意:给定一个无向连通图,判断至少加多少的边,才能使任意两点之间至少有两条的独立的路(没有公共的边,但可以经过同一个中间的顶点). 思路:在同一个双连通分量里的所有的点可以看做一个点,收缩后,新图是一 ...
- 【 Hibernate 】Hibernate的session更新和删除失败问题
applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans xm ...
- 505,display,float,position之间的关系(有疑问)
(display属性设置元素如何显示) 如果display取值为none,那么position和float都不起作用,这种情况下元素不产生框 否则,如果position设置框是绝对定位,float的计 ...
- bootstrap的pillbox使用
使用bootstrap的cameo模版,搭建了一个cms系统,使用pillbox做显示的时候,出现点击×失败的问题. 分析了一下pillbox这个控件的使用方法. pillbox的样例在cameo/f ...
- python连接oracle数据库报错"DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded: "解决方案
操作系统,python3.5, oracle_11, 均为64位:plsql 正常连接. 也顺利安装了cx_oracle 6.3,但是python进行连接的时候就会报错"DatabaseEr ...
- JEECG开发第一个菜单显示设备列表
一.新建设备表(t_base_device) ; -- ---------------------------- -- Table structure for t_base_device -- --- ...