我正在寻找一种方法来做类似于SQL Server的MySQL转储.我需要能够选择表并导出模式和数据(或者我可以通过SQL Server Management Studio导出模式并以某种方式单独导出数据).
我需要这些数据能够转向并返回到SQL Server,因此需要维护GUID/uniqueidentifier和其他列类型.
有谁知道这个好工具?
我正在寻找一种使用SQL Management Studio 2008 R2生成"创建并插入所有行"脚本的方法.
我知道我可以创建一个"创建表"脚本.
我也可以创建一个"插入"脚本,但这只会生成一个带占位符的行.
有没有办法生成包含所有当前存储的行的插入脚本?
我有SQL Server 2008,SQL Server Management Studio.
我需要从Table1database1中选择数据.然后我必须在结果和insert values into Table1database2中编辑一些值.
或者让我用其他方式.
如何将一个表中的数据转换为insert script.
我有一个包含以下数据的表:
Pk_Id ProductName Fk_CompanyId Price
------------------------------------------------------
1 AMX 1 10.00
2 ABC 1 11.00
3 APEX 1 12.00
4 AMX 1 10.00
5 ABC 1 11.00
6 APEX 1 12.00
7 AMX 2 10.00
8 ABC 2 11.00
9 APEX 2 12.00
Run Code Online (Sandbox Code Playgroud)
我想生成用于迁移Fk_CompanyId为1的记录的插入脚本.
有一个插入脚本选项可以为所有记录生成脚本,但我想过滤一些记录以迁移到另一个数据库.
所以我习惯了PHPMySQL,如果我想将表从一个数据库传输到另一个数据库,我:
在MS SQL Server 2008 Express中,我尝试:
那么我怎样才能在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 …Run Code Online (Sandbox Code Playgroud) 我有sql server 2012 express,刚从http://www.ssmstoolspack.com/Download安装了最新版本的ssms工具
使用sql server 2008 express和ssms工具,我能够右键单击一个表,看到一个ssms工具选项,允许我为表生成插入语句,但现在我没有看到它?有谁知道如何为表生成insert语句?
我们目前正在开发一个使用数据库的应用程序.
每次我们更新数据库结构时,我们都必须提供一个脚本来将数据库从先前版本更新为当前版本.
因此,数据库当前有一个数字,它给了我们当前版本,然后我们的软件在我们想要使用"旧"数据库时进行更新.
我们遇到的问题是我们有分支机构:
当我们创建一个新的大功能,用户无法使用(并且不包含在发行版中)时,我们会创建一个分支.
主分支(主干)将定期合并,以确保创建早午餐具有最新的错误更正.
这是一些例子:

问题出在我们的更新脚本上.它们从先前版本更新为当前版本,然后更新数据库的版本号.
想象一下,在创建分支时我们有数据库版本17.
然后我们执行分支,并在Trunk DB上进行更改.DB现在版本为18.
然后我们在分支上进行db更改.由于我们知道已有新版本"18",我们创建版本19和更新程序18-> 19.
然后在树枝上合并主干.
在这个时刻,我们可能会有一些永远不会运行的更新程序.
如果有人在合并之前更新了他的数据库,他的数据库将被标记为具有版本19,更新17-> 18将永远不会完成.
我们想要改变这种行为,但我们找不到如何:
我们的约束是:
我们可以做些什么来确保数据库分支之间的连续性?
在这里,我找到了手动创建数据种子脚本的解决方案.手动解决方案允许我选择要生成插入的表
我想知道是否有通过PowerShell运行相同进程的选项?
到目前为止,我已经设法创建了一个创建数据库模式播种器的SQL脚本:
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | out-null
$s = new-object ('Microsoft.SqlServer.Management.Smo.Server') "(localdb)\mssqlLocalDb"
$dbs=$s.Databases
#$dbs["HdaRoot"].Script()
$dbs["HdaRoot"].Script() | Out-File C:\sql-seeding\HdaRoot.sql
#Generate script for all tables
foreach ($tables in $dbs["HdaRoot"].Tables)
{
$tables.Script() + "`r GO `r " | out-File C:\sql-seeding\HdaRoot.sql -Append
}
Run Code Online (Sandbox Code Playgroud)
但有没有类似的方法来生成数据种子脚本?
有任何想法吗?干杯
我不能使用链接服务器.
两台服务器上的两个数据库都具有相同的结构但数据不同.
我有10k行从一台服务器上的DB传输到另一台服务器上的同一个DB.我无法在其他服务器上恢复数据库,因为它将占用我在其他服务器上没有的大量空间.
所以,我有2个选项,我不知道如何执行:
是否有用于编写MSSQL表数据脚本的免费工具?我很乐意写一个,但我希望它已经完成,应用程序成熟之前/
sql-server ×7
sql ×5
database ×3
ssms ×3
branch ×1
export ×1
merge ×1
powershell ×1
t-sql ×1
tfs ×1