我想从远程服务器数据库到本地数据库获取单个表的所有详细信息,在页面加载事件期间应该发生,因为后端进程可以帮助我解决这个问题。
注意:
服务器数据库表列可能与本地数据库略有不同
Each time when a new user is added in the server, it should update the local DB when the UserPage.aspx page is loaded.
使用的工具:ASP.NET,SQL SERVER 2008。
例如:
让数据库名称为示例,表名为客户
**Table Header in Server DB:** Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob
**Table Headers in Local DB:** Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob,Cus_password
页面加载后,来自服务DB的Customer表中的所有数据都应该同步到localDB
答案 0 :(得分:0)
假设数据库登录可以访问这两个数据库,您可以通过数据库连接执行以下字符串作为一个命令。
--empty local table
truncate table [sample]..customer;
--fill local table
insert into [sample]..customer
(Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob)
select Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob from serverDb..Customer;
这会让你开始,但这不是一个好的架构。您可能希望在服务器数据库中的表上放置一个触发器,只要serverDb中有新行,就会在本地数据库中插入新行。
编辑
显示整个过程
protected void Page_Load(object sender, EventArgs e){
string sql = @"--empty local table
truncate table [sample]..customer;
--fill local table
insert into [sample]..customer
(Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob)
select Cus_id,Cus_name,Cus_address,Cus_email,Cus_mob from serverDb..Customer;";
var conn = new SqlConnection("Server=localhost;Database=sample;User Id=myUserName;Password = myPassword");
var cmd = conn.CreateCommand();
cmd.CommandText = sql;
conn.Open();
cmd.ExecuteNonQuery();
}
答案 1 :(得分:0)
我会建议你SCHEDULE一个工作,每隔15分钟从后端加载记录到localdb。您可以使用管理工作室来实现这一目标。