我正在使用ASP.net MVC5和Entity Framework 是否有任何方法或脚本允许在我的数据库中每天自动更新列(可能会更改)
答案 0 :(得分:1)
我已经提出了一些我认为你需要遵循的步骤,因为你说你需要执行一些脚本。
答案 1 :(得分:0)
是的,你有几个选择
1 Windows服务应用,这基本上与任何其他服务一样隐藏,您可以在此处查看指南https://docs.microsoft.com/en-us/dotnet/framework/windows-services/walkthrough-creating-a-windows-service-application-in-the-component-designer
2创建一个控制台应用程序并将其放入操作系统的任务调度程序这更简单,因为您在Windows中配置了一个句点,并且可以随时更改它并且不需要重新编译你的应用。在这里,您可以看到指南https://technet.microsoft.com/en-us/library/cc721931(v=ws.11).aspx
3创建SQL作业如果要以DB Admin的身份执行此操作,可以在SQL中创建作业,这也将定期运行脚本,如何在sql中创建作业https://technet.microsoft.com/en-us/library/ms190268(v=sql.110).aspx#TsqlProcedure
EXEC dbo.sp_add_job
@job_name = N'Update Clients' ;
GO
EXEC sp_add_jobstep
@job_name = N'Update Clients',
@step_name = N'Update IDs',
@subsystem = N'TSQL',
@command = N'UPDATE CLIENTS SET...',
@retry_attempts = 5,
@retry_interval = 5 ;
GO
EXEC dbo.sp_add_schedule
@schedule_name = N'RunDaily',
@freq_type = 1,
@active_start_time = 233000 ;
USE YOURDB ;
GO
EXEC sp_attach_schedule
@job_name = N'Update Clients',
@schedule_name = N'RunDaily';
GO
EXEC dbo.sp_add_jobserver
@job_name = N'Update Clients';
GO
4您可以创建PowerShell脚本这是一个示例http://www.sqlservercentral.com/blogs/nycnet/2013/05/24/performing-an-insert-from-a-powershell-script/并将其放在Windows任务计划程序中。