从字符串转换为datetime时转换vaild [英] conversion vaild when converting from string to datetime
问题描述
大家好,
i拥有vb中的属性
她的类型是字符串
这是我将其添加到db
hi all ,
i have property in vb
her type is string
this is my code fo adding it to the db
begin try declare @stageid
int declare @schoolid nchar(10)
begin tran
INSERT INTO tbl_lisense (old_lisense_number,edu_type_id,lisenses_date ,lisensee_date,school_id,old_lisense_date) VALUES (N'4575168',1,CONVERT(VARCHAR(10),'12/02/1436', 131) ,CONVERT(VARCHAR(10),'12/10/1438', 131),1985,CONVERT(VARCHAR(10),'10/11/1433', 131) ) ; set @stageid =1 set @schoolid=1985 insert into tbl_scholl_stage values(@stageid,@schoolid) IF @@TRANCOUNT > 0 BEGIN COMMIT TRANSACTION End End Try begin catch SELECT ERROR_NUMBER() AS ErrorNumber, ERROR_SEVERITY() AS ErrorSeverity, ERROR_STATE() AS ErrorState, ERROR_PROCEDURE() AS ErrorProcedure,ERROR_LINE() AS ErrorLine, ERROR_MESSAGE() AS ErrorMessage
IF @@TRANCOUNT > 0 BEGIN ROLLBACK TRANSACTION End end catch
它运行良好
我在gridview中查看它
com.CommandText =select old_lisense_number,edu_type_id,CONVERT(VARCHAR(10),lisenses_date,101 )lisenses_date,CONVERT(VARCHAR(10),lisensee_date,101)lisensee_date,tbl_lisense.school_id,CONVERT(VARCHAR(10),old_lisense_date,101)old_lisense_date来自tbl_lisense,其中school_id ='& schollid& '
工作得很好
问题发生时,iam尝试更新日期值来自gridview
带有此查询的
com.CommandText =update tbl_lisense set lisenses_date = CONVERT(VARCHAR(10),'& obj_lisen.Lisenses_date&',131),lisensee_date = CONVERT (VARCHAR(10),'& obj_lisen.Lisensee_date&',131)其中old_lisense_number = N'& Convert.ToString(obj_lisen.Old_lisense_number)& '和school_id =& Convert.ToString(obj_lisen.School_id)&
它有时会给我带来异常,而在其他时候它会起作用
i只需从文本框中获取值并将其赋予属性
可以帮助我吗?
it's working well
iam viewing it in gridview
com.CommandText = "select old_lisense_number,edu_type_id,CONVERT(VARCHAR(10),lisenses_date,101)lisenses_date,CONVERT(VARCHAR(10),lisensee_date,101)lisensee_date,tbl_lisense.school_id,CONVERT(VARCHAR(10),old_lisense_date,101)old_lisense_date from tbl_lisense where school_id='" & schollid & "'"
it'sworking well
the problem happen when iam trying to update the value of dates takes from gridview
with this query
com.CommandText = "update tbl_lisense set lisenses_date=CONVERT(VARCHAR(10),'" & obj_lisen.Lisenses_date & "', 131),lisensee_date=CONVERT(VARCHAR(10),'" & obj_lisen.Lisensee_date & "',131 ) where old_lisense_number=N'" & Convert.ToString(obj_lisen.Old_lisense_number) & "' and school_id= " & Convert.ToString(obj_lisen.School_id) & " "
it give me exception sometimes and in other times it's working weel
i just take the value from textbox and assogn it to property
could any one help me ?
推荐答案
看看你的日期,12/10/1438和12/02/1436 ,然后查看SQL DateTime数据类型的有效日期范围。
http://msdn.microsoft.com/en-us/library/ms187819.aspx [ ^ ]
Look at your dates, "12/10/1438" and "12/02/1436", and then look at the valid date ranges for the SQL DateTime data type.
http://msdn.microsoft.com/en-us/library/ms187819.aspx[^]
我认为..
您正在尝试将varchar(10)值插入到日期时间或日期列到Sql表中,例如..
I think..
You are trying to insert the varchar(10) value to a Datetime or Date Column into Sql Table like..
CONVERT(VARCHAR(10),'12/10/1438', 131),1985,CONVERT(VARCHAR(10),'10/11/1433', 131) )
如果不是问题..
if it's not the problem..
1>debug the code and try to find what value [obj_lisen.Lisenses_date] getting..
and see is it really convertable to datetime.
or try to use
Convert.ToDatetime(obj_lisen.Lisenses_date)
这篇关于从字符串转换为datetime时转换vaild的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!