问题描述
如下demo:protectedvoidPage_Load(objectsender,EventArgse){stringdatetime=Session["dateTime"].ToString();stringsql="select*fromScorewheredate='"+datetime+"'";GridView1.DataSource=DBHelper.GetDataTable(sql);//注意查询和update的时候都要加上where日期//数据库中加一列日期列}现在数据库中Score表我已经增加了字段datetime这一列,下面是我之前未增加datetime这一列字段的score结构表:DeptIDintCheckedPIDvarchar(50)UncheckedVoteIDvarchar(50)UncheckedSCORE_1numeric(18,0)CheckedSCORE_2numeric(10,0)CheckedSCORE_3numeric(10,0)CheckedSCORE_4numeric(10,0)CheckedSCORE_5numeric(10,2)CheckedSCORE_6numeric(10,0)CheckedSCORE_Totalnumeric(10,2)CheckedIdentitiesvarchar(1)Checkedstaff表:StaffIdvarchar(50)UncheckedNamevarchar(50)CheckedDeptIDintCheckedPositionIDintCheckedPositionsvarchar(20)CheckedUntilTimevarchar(20)CheckedLeadStaffintCheckedIDcardvarchar(21)CheckedSexvarchar(2)CheckedBirthdayvarchar(10)CheckedNationavarchar(2)Checkedschoolvarchar(20)CheckedGraduationTimevarchar(10)CheckedProfessionalvarchar(20)CheckedTechnologyvarchar(20)CheckedQualificationsvarchar(20)CheckedDoesvarchar(2)CheckedTimExpiredvarchar(10)CheckedYearsvarchar(10)CheckedRemarksvarchar(50)CheckedUnchecked之前的select查询语句:sql=string.Format("selectnameas员工姓名,score_1as'{0}',score_2as'{1}',score_3as'{2}',score_4as'{3}',score_totalas合计fromdbo.ScorejoinstaffonScore.pid=staff.staffidwhere(staff.deptid={4}orstaff.deptid={5})andLeadStaff=0union"+"selectNameas员工姓名,null,null,null,null,nullfromstaffwherestaffidnotin(selectpidfromscore)and(deptid={4}ordeptid={5})andLeadStaff=0",dt.Rows[0][0].ToString(),dt.Rows[1][0].ToString(),dt.Rows[2][0].ToString(),dt.Rows[3][0].ToString(),"40","39");}现在因为又增加一条datetime记录,我怎么修改上面的select语句实现:页面上我选择dropdownlist的月份数字后,可以将这个月份数字插入到score表中的新增加的datetime这一字段中
解决方案
解决方案二:
该回复于2012-03-30 09:39:33被版主删除
解决方案三:
没大看懂。你是想实现一个查询的操作还是新增的?
解决方案四:
这都什么乱七八糟的啊,向往字段写数据,也得update或insert,跟select有什么关系,要是选择就加个where条件就是了
解决方案五:
sql=string.Format("selectnameas员工姓名,score_1as'{0}',score_2as'{1}',score_3as'{2}',score_4as'{3}',score_totalas合计fromdbo.ScorejoinstaffonScore.pid=staff.staffidwhere(staff.deptid={4}orstaff.deptid={5})andLeadStaff=0anddate='{6}'union"+"selectNameas员工姓名,null,null,null,null,nullfromstaffwherestaffidnotin(selectpidfromscore)and(deptid={4}ordeptid={5})andLeadStaff=0",dt.Rows[0][0].ToString(),dt.Rows[1][0].ToString(),dt.Rows[2][0].ToString(),dt.Rows[3][0].ToString(),"40","39",datetime);}
解决方案六:
这个不是查询,这个是修改,大哥!根据ID查出一条数据,把他的属性附上查询到的值,要修改的属性附上修改后的值。用修改方法就OK!。
解决方案七:
首先获取选择时间和对应的namesql=string.Format("updateScoresetdatetime={0}whereName={1}",mytime,name)