Monday, 15 July 2013

sql server - Inserting primary key value into other column of same record in a SQL table -



sql server - Inserting primary key value into other column of same record in a SQL table -

i working database application adds record table through web page in asp.net mvc.

i have table terms next columns'

id termname termorder

i inserting termname webpage , termorder same value id . illustration inserting termname "fall" table , adds id default using identity specification 10 adds 0 termorder id value 10 in termorder.

i using knockout js , odata insert record

knockout js

self.addterm = function (term) { var payload = {termname: this.term()}; $.ajax({ url: '/odata/terms', type: 'post', data: json.stringify(payload), contenttype: 'application/json', datatype: 'json' }); }

controller

protected override term createentity(term entity) { var newterm = db.terms.find(entity.id); if (newterm == null) { newterm = db.terms.add(entity); entity.termorder = entity.id; } else { newterm = db.terms.add(newterm); entity.termorder = entity.id; } db.savechanges(); homecoming newterm; }

may know improve way deal it?

one solution utilize trigger:

create trigger trgi_terms_updatetermorder on dbo.terms after insert begin update t set termorder = i.id -- re-create id values in termorder dbo.terms t inner bring together inserted on t.id = i.id end; go

sql-server asp.net-mvc-4 knockout.js odata

No comments:

Post a Comment