VB+SQL的程序有没有什么软件可以制作SETUP.EXE让SQL数据库自动生成? 
哪里有详细的资料呀

解决方案 »

  1.   

    ??????????什么意思??????????
    如果是建数据库,只要在程序里连到服务器去,然后用create语句就可以建库,建表了。
    另外还可以先把现有的数据库备份,然后等程序安装好以后就在新的服务器里恢复
    但如果想用vb把sql server也安装了那恐怕只能shell sql server安装盘的setup.exe了。。
      

  2.   

    楼主的意思应该是:
    要在程序里把VB当前工程所用到的SQL数据库自动加到SQL管理器里。我都是手动的。应该是可以自动的。好像金蝶财务就有这个系统服务功能。
      

  3.   

    SQLserver 服务器是必须先安装好,把整个数据库打成一个SQL脚本,然后在程序安装时运行
      

  4.   

    我都是手动的。应该是可以自动的。好像金蝶财务就有这个系统服务功能。
    =================
    用"restore database ......"
      

  5.   

    SQLserver 服务器是必须先安装好,把整个数据库打成一个SQL脚本,然后在程序安装时运行我就是这个意思,问题是具体怎么实现,  
    数据库做成SQL脚本简单那怎么实现安装的时候运行呢?
      

  6.   

    SQLserver 服务器是必须先安装好,把整个数据库打成一个SQL脚本,然后在程序安装时运行
    -----------------------------------------------------------------------------------------------实现:
    1.写好生成创建数据库、数据库对象(表、视图、关系、触发器等)的SQL语句
    2.将其保存至文本文件或者保存为.sql文件(在查询分析器中先测试其正确性)
    3.在你的程序启动时,写代码使其运行
      

  7.   

    TO bloom121(ad秋):
    那怎么实现安装的时候运行呢?
    -------------------------------------------------------------------------------------
    如果你使用的是非VB自带的安装制作软件,其中都有相关的数据库配置项,参见对应的说明后再编绎发行包即可。各种安装程序制作软件,对数据库的配置不尽相同。
      

  8.   

    能说下restore database ……和用*.sql方式建数据库有什么不同,其优点和不足?
      

  9.   

    restore database是使用恢复的方式,来创建数据库..
       前提是必须已存在有一个数据库的备份,优点是创建使用的代码比较简单。
    *.sql方式是事先编写创建数据库的SQL语句(DDL语言),在实际环境与预设值不同的时候,可以人为手动修改.sql文件中的DDL语句,灵活只针对于熟悉DDL语言的开发者。
    ---------------------------------------------------------------------------------
    两种方式凭自己的喜好。
      

  10.   

    通常的办法是在程序启动后,连接数据,检查错误,判断数据库是否存在和正确,若否,就地创建它。
    当然,你也可以在SETUP中创建。给你一个例子。
    Create a bat file 或Script 脚本,这里以创建BAT文件为例。REM CreateDatabase.bat
    c:\mysql\bin\mysql --user=root --password=password --database=workorder  < c:\mysql\bin\backup_data.sqlecho --------- DONE WITH DB POPULATION -------------- 
    pause
      

  11.   

    -- MySQL dump 10.7
    --
    -- Host: localhost    Database: workorder
    -- ------------------------------------------------------
    -- Server version 4.1.3b-beta-nt-max/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES utf8 */;
    /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
    /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
    /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="NO_AUTO_VALUE_ON_ZERO" */;--
    -- Table structure for table `assignment`
    --DROP TABLE IF EXISTS `assignment`;
    CREATE TABLE `assignment` (
      `WO_NUMBER` varchar(8) NOT NULL default '',
      `ACTION` varchar(20) NOT NULL default '',
      `STAFF_NAME` varchar(20) NOT NULL default '',
      PRIMARY KEY  (`WO_NUMBER`,`ACTION`,`STAFF_NAME`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;--
    -- Dumping data for table `assignment`
    --
    /*!40000 ALTER TABLE `assignment` DISABLE KEYS */;
    LOCK TABLES `assignment` WRITE;
    UNLOCK TABLES;
    /*!40000 ALTER TABLE `assignment` ENABLE KEYS */;--
    -- Table structure for table `assignse`
    --DROP TABLE IF EXISTS `assignse`;
    CREATE TABLE `assignse` (
      `WO_NUMBER` varchar(8) NOT NULL default '',
      `ACTION` varchar(20) NOT NULL default '',
      `STAFF_NAME` varchar(30) NOT NULL default '',
      PRIMARY KEY  (`WO_NUMBER`,`ACTION`,`STAFF_NAME`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;--
    -- Dumping data for table `assignse`
    --
    /*!40000 ALTER TABLE `assignse` DISABLE KEYS */;
    LOCK TABLES `assignse` WRITE;
    INSERT INTO `assignse` VALUES ('DDS0001','Requestor','Yew');
    UNLOCK TABLES;
    /*!40000 ALTER TABLE `assignse` ENABLE KEYS */;--
    -- Table structure for table `contractor`
    --DROP TABLE IF EXISTS `contractor`;
    CREATE TABLE `contractor` (
      `WO_NUMBER` varchar(8) NOT NULL default '',
      `CONTRACTOR` varchar(40) NOT NULL default '',
      PRIMARY KEY  (`WO_NUMBER`,`CONTRACTOR`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;--
    -- Dumping data for table `contractor`
    --
    /*!40000 ALTER TABLE `contractor` DISABLE KEYS */;
    LOCK TABLES `contractor` WRITE;
    UNLOCK TABLES;
    /*!40000 ALTER TABLE `contractor` ENABLE KEYS */;--
    -- Table structure for table `downtime`
    --DROP TABLE IF EXISTS `downtime`;
    CREATE TABLE `downtime` (
      `DT_ID` varchar(10) NOT NULL default '',
      `DT_NOUN` varchar(30) NOT NULL default '',
      `DT_VERB` varchar(30) NOT NULL default '',
      PRIMARY KEY  (`DT_NOUN`,`DT_VERB`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;--
    -- Dumping data for table `downtime`
    --
    /*!40000 ALTER TABLE `downtime` DISABLE KEYS */;
    LOCK TABLES `downtime` WRITE;
    INSERT INTO `downtime` VALUES ('1000000001','Actuator','Broken'),('1000000002','Actuator','Damage'),('1000000003','Actuator','Fall Down'),('1000000004','Actuator','Jammed'),('1000000006','Actuator','Out of Position'),('1000000009','Air Hose','Jammed'),('1000000007','Air Hose','Leak'),('1000000008','Air Hose','Out of Position'),('1000000010','Air Piping','Jammed'),('1000000011','Air Piping','Leak'),('1000000012','Air Piping','Modified'),('1000000013','Air Receiver Tank','Crack'),('1000000014','Air Receiver Tank','Leak'),('1000000015','Air Receiver Tank','Lower Pressure'),('1000000016','Battery','Damage'),('1000000018','Battery','Less Water'),('1000000017','Battery','Weak'),('1000000019','Bearing','Abnormal Sound'),('1000000020','Bearing','Burnt'),('1000000021','Bearing','Damage'),('1000000022','Bearing','High Temperature'),('1000000023','Bearing','Jammed'),('1000000024','Bearing','Less Lubrication'),('1000000026','Bearing','Loose'),('1000000027','Bearing','Out of Position'),('1000000028','Belt Joint / Lacing','Damage'),('1000000029','Belt Joint / Lacing','Tear Off'),('1000000030','Bolt','Broken'),('1000000033','Bolt','Fall Down'),('1000000032','Bolt','Loose'),('1000000031','Bolt','Lose'),('1000000035','Brake','Malfunction'),('1000000034','Brake','Wear Off'),('1000000037','Bunker','Broken'),('1000000036','Bunker','Crack'),('1000000038','Bush','Damage'),('1000000041','Bush','Loose'),('1000000040','Bush','Out of Position'),('1000000039','Bush','Wear Off'),('1000000062','Cable','Burnt'),('1000000064','Cable','Damage'),('1000000042','Clutch','Abnormal Sound'),('1000000044','Clutch','Engageless'),('1000000043','Clutch','Jammed'),('1000000045','Coil','Burnt'),('1000000046','Coil','Short'),('1000000048','Control Valve','Jammed'),('1000000049','Control Valve','Leak'),('1000000047','Control Valve','Malfunction'),('1000000054','Conunter Knife','Loose'),('1000000053','Conunter Knife','Sharpless'),('1000000052','Conveyor Belt','Stuck'),('1000000051','Conveyor Belt','Tear Off'),('1000000050','Conveyor Belt','Tracking'),('1000000056','Coupling','Loose'),('1000000055','Coupling','Misalign'),('1000000057','Coupling','Out of Position'),('1000000058','Crane','Malfunction'),('1000000059','Cyclone','Leak'),('1000000060','Cyclone','Plug Up'),('1000000061','Damper','Jammed');
    UNLOCK TABLES;
    /*!40000 ALTER TABLE `downtime` ENABLE KEYS */;--
    -- Table structure for table `downtime_all_summary`
    --DROP TABLE IF EXISTS `downtime_all_summary`;
    CREATE TABLE `downtime_all_summary` (
      `DEPARTMENT` varchar(15) NOT NULL default '',
      `DURATION` int(11) NOT NULL default '0'
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
      

  12.   

    Sorry,文件较大,不能贴上去。你自己Extend吧。