HTML5 web SQL动态创建数据库表(同步数据)

10 篇文章 1 订阅
5 篇文章 0 订阅

smcsServices.service( 'VisitInstitutionCacheService', [ '$rootScope','$http', 'BaseURL','DataSourceService', function( $rootScope,$http,BaseURL,DataSourceService ) {
	var service = {

		synVisit: function (synvtdatetime) {

			$http({
				method: 'post',
				cache: false,
				url: BaseURL + 'SysCommonCodeTransform/findVisitInstitution.do',
				params: {
					datetime: synvtdatetime
				}
			}).success(function(response, status, headers, config) {
				try{					
					var obj=response.VisitInstitution;
					var synobj=response.synvisitlist;
					//测试开发 以后优化为动态创建表
					var objstr=JSON.stringify(obj[0]);
						console.log("obj[0]===="+objstr);
					var objjson=JSON.parse(objstr);
					for(var key in objjson){
						console.log("objjson的key为===="+key);
					}
					//测试开发 以后优化为动态创建表
					var db = DataSourceService.getConnection();
					//console.log("synvisitlist synobj[0].syndatetime==="+synobj[0].syndatetime);
					//var db = openDatabase('mydb14', '1.0', 'Test DB', 6 * 1024 * 1024);
					db.transaction(function (tx) {
					tx.executeSql('CREATE Table If Not Exists VisitInstitution (id,AKB020, AKB021,AKA020,AKA101)');  
					tx.executeSql('DELETE FROM syncachecode WHERE syntablename="VisitInstitution"');
					tx.executeSql('INSERT INTO syncachecode (syntablename, syndatetime) VALUES ("VisitInstitution","'+synobj[0].syndatetime+'")');
						for(var i=0;i<obj.length;i++){
							var objAKB020=obj[i].AKB020+"";
							var objAKB021=obj[i].AKB021+"";
							var objAKA020=obj[i].AKA020+"";
							var objAKA101=obj[i].AKA101+"";
							
							if(synvtdatetime!="1970-01-01 00:00:00"){
								//初始化时删除语句不执行。
								//同步数据时先删除后插入。
								tx.executeSql('DELETE FROM VisitInstitution WHERE ID=?', [obj[i].ID]);
							}
							tx.executeSql('INSERT INTO VisitInstitution (id,AKB020, AKB021,AKA020,AKA101) VALUES ("'+obj[i].ID+'","'+objAKB020+'","'+objAKB021+'","'+objAKA020+'","'+objAKA101+'")');
						}
					});
				}catch(e){
					console.log(e.name  +   " :  "   +  e.message);
				}
			});
		},
		initSysCode: function () {
			var syndatetime="";
			//var db = openDatabase('mydb14', '1.0', 'Test DB', 6 * 1024 * 1024);
			var db = DataSourceService.getConnection();
			db.transaction(function (tx) {
		
				tx.executeSql('select * from syncachecode where syntablename="VisitInstitution" ', [], function (tx, results) {
				var len = results.rows.length; 
				syndatetime=results.rows.item(0)['syndatetime'];
				console.log("前台数据库CenterReimburs的同步时间为"+results.rows.item(0)['syndatetime']);
				service.synVisit(syndatetime);	
				}, null);
			});
		}
	}
	return service;
}]);


控制台:

obj[0]===={"AKA101":"11","AKB020":"02162001","AKB021":"西城区西长安街街道灵境社区卫生服务站","ID":"11010602162001","AKA020":"xcqxcajjdljsqwsfwz"}
objjson的key为====AKA101
objjson的key为====AKB020
objjson的key为====AKB021
objjson的key为====ID
objjson的key为====AKA020

web db 动态创建表




web SQL动态创建数据库表,和后台数据库同步。

第一次建表时mydatetime=“1970”年,以后的时后台返回的日期时间作为同步时间。



  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值