鍍金池/ 問(wèn)答/ 數(shù)據(jù)庫(kù)問(wèn)答
初心 回答
  1. session的有效期就是connection,connection斷開(kāi)session就終止了。
  2. set 缺省設(shè)置的是session變量,如上所述,只要connection斷開(kāi)這個(gè)session變量就消失了,下次重連之后,session變量又恢復(fù)到初值了。當(dāng)然,如果不想變量失效,可以在set的時(shí)候加global參數(shù)修改全局變量。
  1. nickname字段上面的設(shè)置呢?

  2. mysql管理工具有些顯示不出來(lái)emojj,實(shí)際上數(shù)據(jù)是好的,你需要在手機(jī)上輸出一下。

影魅 回答

用ccleaner清理下注冊(cè)表試試。

刪除的時(shí)候直接用GeekUninstaller就行,比管家啥的好使多了。

有你在 回答
EXPLAIN select * from A 
left join B on A.aid=B.aid
where A.aid=100;

EXPLAIN select * from (
    select * from A where A.aid=100
) AA
left join B on AA.aid=B.aid

看看兩個(gè)語(yǔ)句的執(zhí)行計(jì)劃。

涼汐 回答

mongo 不允許更新文檔的 _id 字段. 在做更新操作前, 把變量 update 中的 _id 字段去掉就可以了.

可以建個(gè)1對(duì)多關(guān)系的兩張表啊,任務(wù)表(task_id,..)和任務(wù)轉(zhuǎn)辦表(id, task_id, user_id, parent_id, next_id,..),parent_id為0的就是第一個(gè)接手記錄,next_id為0的就是最后個(gè)接手的記錄。查這個(gè)任務(wù)的所有關(guān)系鏈按照id升序就是了。查指定人的下級(jí)關(guān)系鏈找轉(zhuǎn)辦表主鍵id大于這個(gè)人所在記錄的主鍵id的就行了。

局外人 回答

在我瀏覽了hibernate生成sql出錯(cuò)的原因后,問(wèn)題解決了……因?yàn)槲矣昧薽ysql的保留字……因此自動(dòng)建表就會(huì)失敗。

clipboard.png

注意到@OrderColumn(name=“index”)了嗎?index是mysql的保留字哦hhhhhhh

青裙 回答
  1. 兩張表有關(guān)聯(lián)的字段、也就是外鍵的話可以用 INNER JOIN
  2. 兩張表結(jié)構(gòu)相同,對(duì)應(yīng)字段類型都一樣的話可以用 UNION ALL

看你這幾張表的結(jié)構(gòu)是怎么樣的就是用那種方法

要么就把你的表結(jié)構(gòu)發(fā)出來(lái)、幫你看看

執(zhí)念 回答

檢查下是不是數(shù)據(jù)類型的原因,字符串跟對(duì)象是有區(qū)別的,你把 q 的雙引號(hào)去掉。

哎呦喂 回答

@歐兜兜是素姀

昨天晚上開(kāi)了一晚上 今天早上發(fā)現(xiàn)插入好了 但是沒(méi)有打印并且報(bào)錯(cuò) 但是new表里是12020條數(shù)據(jù)

圖片描述

圖片描述

忘了我 回答

對(duì)于實(shí)體管理器而言,它發(fā)現(xiàn) Product.category 是個(gè)同樣注冊(cè)為實(shí)體的 Category 類型,而這個(gè)類型的主鍵是 cid,因此它就能知道查詢結(jié)果中 cid 對(duì)應(yīng)的是 category 表的主鍵。

喜歡你 回答

對(duì)于復(fù)制集,唯一索引是保證絕對(duì)唯一的;對(duì)于分片集,只保證片內(nèi)唯一,不保證跨片的唯一,除非唯一索引正好是片鍵。
這些在文檔里有,可以參考。因?yàn)椴恢滥憔唧w出現(xiàn)的是什么問(wèn)題,所以也沒(méi)法分析了。

乖乖瀦 回答

測(cè)試發(fā)現(xiàn),SET SQL_MODE=ANSI_QUOTES 并不是影響sql的最終原因。而是原始sql語(yǔ)句中不能使用雙引號(hào)來(lái)引字符串。
應(yīng)該用單引號(hào)',如果單號(hào)不能使用就用帶轉(zhuǎn)義符的\'

葬愛(ài) 回答

有可能是并發(fā)或者鎖表,語(yǔ)句主要集中在 1~2 分鐘之內(nèi)

冷溫柔 回答

我的建議是不從sql2中去拿數(shù)據(jù),既然能存表就證明這些數(shù)據(jù)你是知道的,那為什么還要再去取一次呢 何不直接用存表前的數(shù)據(jù)去操作下一個(gè)步驟呢

柚稚 回答

因?yàn)槟銢](méi)user.save()

前端頁(yè)面的這個(gè)分頁(yè)功能的數(shù)據(jù)庫(kù)固定嗎?
如果固定的話,可以在 Model 里面加上 __bind_key__ = 'db01'

如果不固定的話,換個(gè)思路,根據(jù)你上面的 query 自己實(shí)現(xiàn)一個(gè)paginate()

笨小蛋 回答

應(yīng)用加鎖解決不了程序分布式部署的問(wèn)題。

這有點(diǎn)類似隊(duì)列里的出隊(duì)列。A取的了一條消息, 該消息就不能被B取到。這種并發(fā)控制用mongo的話,我一般醬紫:

  1. 記錄加上一個(gè)處理狀態(tài)字段,如processStatus, 默值認(rèn)為0未處理 1處理中 2處理成功 3處理失敗 4重試。
  2. 利用findAndModify具有原子性操作的特性。
db.foo.findAndModify({
    query:{processStatus:[0,4]},
    update: { $set: { processStatus: 1} },
});
// 再根據(jù)處理結(jié)果 置processStatus為成功、失敗或者重試。

參考文檔:mongo的原則性和事務(wù)性