從字串向 datetime 轉換時失敗

時間 2021-10-20 12:50:35

1樓:卷今夏侯含巧

明顯會出錯嘍,你資料庫的dl_time欄位應該是datetime型別,那你是經過下面得到時間string

time

=datetime.now.tostring();

string

sql=

"insert

into

usertime

(username,dl_time)

values

('"+

name

+"','"+

time

+"')"; 此時,time是string.是無法自動轉為datetime型的。樓主為什麼不用sql提供的提取系統時間函式呢》??string

sql=

"insert

into

usertime

(username,dl_time)

values

('"+

name

+"','"+

time

+"')"; 改為以下:string

sql=

"insert

into

usertime

(username,dl_time)

values

('"+

name

+"',getdate())"; 這樣就搞定了?何必還要用c#的now再轉sql的datetime.

2樓:杜揚遲沛

有可能是環境的原因,你可以使用顯示轉換:

eg:string^

mysql

="select

*from

店內消費報表檢視

where

店內消費報表檢視.記帳時間

between'"+

this->開始日期datetimepicker->value->tostring("yyyy-mm-dd

hh:mm:dd")+"'

and'"

+this->結束日期datetimepicker->value->tostring("yyyy-mm-dd

hh:mm:dd")

+"'";

這樣應該就沒有問題了。

3樓:馮人扶秀蘭

cmd.commandtext

="select

*from

beiwanglu

where

date='"+datetimepicker1.text+"'";不要把變數和字串混在一起

4樓:滄海v飛天

string lgtm = datetime.now.tostring("yyyy-mm-dd hh:mm:ss");

("yyyy-mm-dd hh:mm:ss"); 畫蛇添足

roleid id是vchar嗎 還加引號 一般都是int的啊

'- logintime<=' 這裡要這個引號幹嘛呢

time傳值的方法和int一樣 也是不要引號的啊 錯誤真多

select * from logintm where roleid='1' and '2 '- logintime<='3'order by logintimeid desc

這是你的執行結果 int型的要''嗎 '2 '是什麼東東 字元型要減什麼呢 '3'這就是替換你的時間 你看看那個time型別是等於字元型的

還等什麼高手 就你這點分值得我搶嗎 真是的

string loginsql = "select * from logintm where role and "+lgtm+" - logintime<=" + dropdownlist2.selectedvalue + "order by logintimeid desc";

用這句話試試

5樓:匿名使用者

logintime在資料庫裡是時間型別的吧?

如果是的話,而lgtm和dropdownlist2.selectedvalue是字串,

不同型別怎麼能進行運算呢?

如果不是的話,拿字串進行運算也是不行的哦!

string lgtm=datetime.parse(dropdownlist2.selectedvalue);

string loginsql = "select * from logintm where roleid='" + dropdownlist1.selectedvalue + "' and getdate() - logintime<='" + lgtm + "'order by logintimeid desc";

sqlserver裡getdate()就是當前時間,oracle裡是sysdate

6樓:卞米琪蠻蘿

沒看到你的**,請試試以下轉換方式,我試過,沒問題的。

/***

轉換成日期**

@param

datestring

*@param

formatstring

*@return

*/public

static

date

parse(string

datestring,

string

formatstring)

catch

(parseexceptione)}

7樓:虎用

lgtm轉化之後假設變成了:

lgtm = "2008-12-25 11:22:33"...

你這個sql語句加進去成什麼了??

loginslq = "select * from logintm where role2008-12-25 11:22:33 - logintime <=」 ....

你能告訴我字串「2008-12-25 11:22:33」減去(-)字串 logintime 是什麼東西嗎?

改改你這個邏輯吧……

哥們,你自己設個斷點看看你那個「loginsql」拼出來是個什麼字串你不就知道錯在哪兒了嗎?

你這個字串類似於:

loginsql = "select * from logintm where roleid='12345' and '2008-12-25 11:22:33'- 2008-12-30 12:

00:00 <='3'order by logintimeid desc";

......「'2008-12-25 11:22:33'- 2008-12-30 12:00:00 <='3'」這一串亂七八糟的你讓sql怎麼運算?

8樓:圭珧郎香馨

select

datediff(day,getdate(),returntime)from

lend

9樓:

是這樣的...

string lgtm=datetimeemp.value.tostring()

java字串字串亂碼問題

jsp在地址裡直接傳漢字是有這個亂碼問題。可以採用public string tostring string s catch exception e public string ex chinese string str else catch exception ex return str 來轉換!...

C中怎樣從指定字串中查詢並替換字串

stringtxt asdjsfk aaaaaaaaa 判斷這個字串中包含替換 就在斜槓前面加上字元 x 1 使用if語句 if txt.contains 2 使用條件運算子 txt txt.contains txt.replace x txt 擴充套件資料stringreplace 替換的目標,替...

c怎麼把byte陣列轉換為字串

實現位元組陣列至十六進位制字串轉換,這個操作在接收網路資料時非常有用,嘛,就一行,就一行,就一行 string str bitconverter.tostring bytes 司馬刀劍 有兩張方法 方法一 字串轉byte string stringmessage how are you?consol...