如何简单地为表和数据生成CREATE SQL脚本?

Edw*_*uay 28 sql-server

所以我习惯了PHPMySQL,如果我想将表从一个数据库传输到另一个数据库,我:

  • 去桌子
  • 点击"导出"
  • CTRL-C
  • 转到其他数据库,插入SQL,CTRL-V

在MS SQL Server 2008 Express中,我尝试:

  • 右键单击,脚本表为,CREATE TO
    • 但这只给了我CREATE TABLE sql,而不是INSERT INTO sql
  • 右键单击,脚本表为,INSERT TO
    • 这给了我INSERT到sql但假设我要填写数据(!)
  • 所以我启动SQL Server 2008 Express导入/导出数据向导,但它似乎没有给我我想要的简单的CREATE/INSERT INTO脚本.:-(

那么我怎样才能在MS SQL Server 2008 Express中获得一个表的简单SQL转储,这是PHPMySQL给我的那种:

-- phpMyAdmin SQL Dump
-- version 2.11.9.2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Nov 23, 2008 at 03:34 PM
-- Server version: 5.0.67
-- PHP Version: 5.2.6

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Database: `test`
--

-- --------------------------------------------------------

--
-- Table structure for table `members`
--

CREATE TABLE IF NOT EXISTS `members` (
  `id` int(11) NOT NULL auto_increment,
  `firstName` varchar(50) collate latin1_general_ci NOT NULL,
  `lastName` varchar(50) collate latin1_general_ci NOT NULL,
  `age` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=4 ;

--
-- Dumping data for table `members`
--

INSERT INTO `members` (`id`, `firstName`, `lastName`, `age`) VALUES
(1, 'Jim', 'Taylor', 34),
(2, 'John', 'McGregor', 23),
(3, 'Alice', 'Anderson', 33);
Run Code Online (Sandbox Code Playgroud)

Tha*_*amy 72

在SQL Server Management Studio中,您可以右键单击数据库并选择:

任务 - >生成脚本 - 下一步 - >从列表中选择所需的对象 - >单击高级然后只需继续完成向导.当提示您选择脚本选项时,请务必将"脚本数据"设置为"TRUE".

SQL Server 2008

在此输入图像描述

SQL Server 2008 R2

在此输入图像描述

进一步阅读:

Robert Burke:SQL Server 2005 - 编写数据库脚本

从堆栈溢出中获取: 如何获取SQL Server数据的脚本?

  • 对于较新的 sql server management studio 版本,您应该按高级按钮并将“数据类型到脚本”选项设置为“模式和数据” (2认同)

Tom*_*lak 3

请看这里:Simon Holywell:SQL Server 2005 转储到 SQL 语句

Simon 所说的(没有双关语)是这样的:没有任何内置的东西,但是有一种“脚本方式”可以做到这一点。他制作了一个您可以使用的 PHP 脚本。