我想将一个数据库的所有表(比如说Database2)的表模式与另一个数据库(比如说Database1)进行比较/转移,我希望通过存储过程实现这一点,请你帮我吧? /> 例如。如果数据库1有一个表雇员,其中empname列是varchar(3)而数据库2有一个表雇员,其中empname列是varchar(5),那么在运行脚本后,database1表雇员的empname列也应该变为varchar( 5)。我已经写了相同的以下存储过程,但不知道这是否有效 我尝试过:
CREATE PROCEDURE [dbo]。[CompareSchemaScript]( @ ix_sys_error int OUTPUT ) AS BEGIN TRY DECLARE @ LogError INT , @ PrimaryKey INT , @ ErrorMessage nvarchar ( 2000 ) EXEC log_ins @ LogError , @的PrimaryKey , 5 , 1 , NULL , 1 ,' Script Started' ALTER SCHEMA Database1.tables TRANSFER Database2.tables; EXEC log_ins @ LogError , @ PrimaryKey , 7 , 1 , NULL , 1 ,'脚本已成功完成' END TRY BEGIN CATCH SELECT @ ix_sys_error = ERROR_NUMBER() SELECT @ ErrorMessage = ERROR_MESSAGE() EXEC ix_sys_event_log_ins @ LogError , @ PrimaryKey , 6 , 1 , NULL , 1 , @ ErrorMessage , NULL END CATCH IF ( @ ix_sys_error != 0) RETURN 1 ELSE RETURN 0 END解决方案
这会有帮助吗? https:// www.codeproject/tips/664327/copy-table-schema-and-data-from-one-database-to-an
I want to compare/transfer table schema of all tables of one database(lets say Database2) to another(lets say Database1) and i want this to happen through a stored procedure, could you please help me in it? For eg. if database 1 has a table employee in which empname column is varchar(3) and database 2 has a table employee in which empname column is varchar(5), then after running the script the empname column of database1 table employee should also become varchar(5). I have written the below stored procedure for the same but dont know whether this will work or not What I have tried:
CREATE PROCEDURE [dbo].[CompareSchemaScript] ( @ix_sys_error int OUTPUT ) AS BEGIN TRY DECLARE @LogError INT, @PrimaryKey INT,@ErrorMessage nvarchar(2000) EXEC log_ins @LogError, @PrimaryKey,5,1,NULL,1,'Script Started' ALTER SCHEMA Database1.tables TRANSFER Database2.tables; EXEC log_ins @LogError, @PrimaryKey,7,1,NULL,1,'Script Completed Successfully' END TRY BEGIN CATCH SELECT @ix_sys_error = ERROR_NUMBER() SELECT @ErrorMessage = ERROR_MESSAGE() EXEC ix_sys_event_log_ins @LogError, @PrimaryKey,6,1,NULL,1,@ErrorMessage,NULL END CATCH IF (@ix_sys_error !=0) RETURN 1 ELSE RETURN 0 END 解决方案 Will this help? www.codeproject/tips/664327/copy-table-schema-and-data-from-one-database-to-an更多推荐
如何使用存储过程将所有表模式从一个数据库传输到另一个数据库
发布评论