Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 从另一个数据库插入数据库,在SQL Server中指定一些值_Sql Server_Database_Sql Server 2008_Sql Insert - Fatal编程技术网

Sql server 从另一个数据库插入数据库,在SQL Server中指定一些值

Sql server 从另一个数据库插入数据库,在SQL Server中指定一些值,sql-server,database,sql-server-2008,sql-insert,Sql Server,Database,Sql Server 2008,Sql Insert,我已经对此进行了研究,但还没有找到一个特别的解决方案。 我有两个表,每个表位于不同的数据库中 假设它们是DB1.T1和DB2.T2 从DB1.T1中,我想从两个特定列ID和Description中选择所有行 DB2.T2有两个相同的列,但还有三个附加列:T2.ID,启用,日期 一些考虑。T2是一个SQL服务器,我一直使用MySQL,但是这个SQL服务器与我以前的经验有些不一致。自动增量默认条件不存在,并且在创建新记录时插入默认时间戳或日期值也不可用 根据我的研究,我找到了一种解决方案 INSER

我已经对此进行了研究,但还没有找到一个特别的解决方案。 我有两个表,每个表位于不同的数据库中

假设它们是
DB1.T1
DB2.T2

DB1.T1
中,我想从两个特定列
ID
Description
中选择所有行

DB2.T2
有两个相同的列,但还有三个附加列:
T2.ID
启用
日期

一些考虑。T2是一个SQL服务器,我一直使用MySQL,但是这个SQL服务器与我以前的经验有些不一致。自动增量默认条件不存在,并且在创建新记录时插入默认时间戳或日期值也不可用

根据我的研究,我找到了一种解决方案

INSERT INTO DB2.T2(ID, Description, Enable, Code ,Date)
    SELECT ID, Description 
    FROM DB1.T1;
但是如何添加其余三列呢

我想使用允许的
GETDATE()
函数执行一些while循环,并将增量作为DB2.T2的ID插入,但我不知道如何立即执行

我可以使用前面的select INTO语法和INSERT INTO来执行类似的操作吗

INSERT INTO DB2.T2(ID, Description, Enable, Code, Date) 
VALUES (index,?,1,?,GETDATE())
我现在真的很困惑。我希望你能明白我想解释的

除了将数据从一个表导出到另一个表之外,我还想向其余列插入其他数据。对于enable,我希望它始终为1,日期为当前日期,ID必须是一个数字,并且必须根据行递增

你建议做什么

与此同时,我将继续努力寻找解决这个问题的类似方法

提前感谢。:)


其他数据。我通过VPN在远程连接上工作,我所拥有的只是某种cmd接口,可以插入并使用DB。大约有20000行,通过CSV使用批量导入导出对我来说很奇怪。

除非我遗漏了什么,否则您可以使用:

INSERT INTO DB2.T2(ID, Description, Enable, Code ,Date) 
SELECT ID, Description, 1 ,null,getdate() FROM DB1.T1;
当您开始考虑循环时,请停止并重新考虑问题。几乎总是一种更好的方式


若ID应该递增,而不是基于DB1.T1中的内容,那个么请考虑在DB2中生成该列。如果您这样做,那么您只需将插入的ID去掉,SQL Server将自行处理。

是的,这正是我所认为的,但我不确定是否可以做到。如果可能的话,我会马上通知你。谢谢你的快速回复,非常有帮助。非常感谢!这两个数据库是否在同一服务器中?服务器安全选项“跨数据库所有权检查”设置为on?