文章目录
  1. 1. 随机数生成
  2. 2. 插入数据
    1. 2.1. 仅插入数据
    2. 2.2. 新建表
  3. 3. 数据转移
    1. 3.1. 复制数据库
  4. 4. 附加数据库时,报错数据库只读的解决方案

随机数生成

UPDATE CItemResult SET Result = cast(ceiling(rand(checksum(newid()))*N) as int)

http://blog.sqlauthority.com/2007/04/29/sql-server-random-number-generator-script-sql-query/
http://hefan.iteye.com/blog/563840

插入数据

http://technet.microsoft.com/zh-cn/library/ms188263%28v=sql.105%29.aspx

仅插入数据

DECLARE @I INT
DECLARE @J INT
SET @I = 2
WHILE @I < 28
BEGIN
    INSERT INTO CItemResult (ID, TaskID, Auditor_ID, CellID, Applicability, Result)
        SELECT ID + (47 * (@I - 1)), @I, Auditor_ID, CellID, Applicability, floor(rand() * 10)
        FROM CItemResult C
        WHERE C.ID < 48
    SET @I = @I + 1
END
GO

新建表

SELECT column1, column2 INTO new_table_name FROM old_table_name

数据转移

有GUI界面可以使用

复制数据库

分离和备份都不适合。

  1. 由原数据库创建create脚本。
  2. 创建一个新的数据库,将排序规则设置为Chinese_PRC_CS_AS,(后面会用到)
  3. 由create脚本将源数据库中的表在新数据库中重建
  4. 选择导入数据,将数据从原数据库中导入,如果数据库中的id是自增的标示符,则选中标示符插入。 这样数据库就备份好了。 如果
  5. 直接选择导入数据,则会发现新数据库中的表没有主外键,自增等关系
  6. 出现“id为只读属性”类似错误,或者“VS_ISBROKEN"这种错误,则在相应的表复制时,选中标示符插入

附加数据库时,报错数据库只读的解决方案

http://blog.sina.com.cn/s/blog_3f2ef11801000bmy.html

  • 首先,修改mdf等文件的属性,取消“只读”属性
  • 使用MSSQL配置管理工具,将服务的运行账户从“Network Service”修改为“Local System”

我修改完之后就好了。

文章目录
  1. 1. 随机数生成
  2. 2. 插入数据
    1. 2.1. 仅插入数据
    2. 2.2. 新建表
  3. 3. 数据转移
    1. 3.1. 复制数据库
  4. 4. 附加数据库时,报错数据库只读的解决方案