鍍金池/ 問(wèn)答/ 數(shù)據(jù)庫(kù)問(wèn)答
小眼睛 回答

中文亂碼嗎?試試下面的

alter database 數(shù)據(jù)庫(kù)名  character set utf8;

改了后,在看下數(shù)據(jù)庫(kù)編碼有沒(méi)有改成utf8,改了后重新插入一條看看。

用 mysql 語(yǔ)法插入一條看看是不是亂碼
如果是的話設(shè)置下面這個(gè):
  • 中止MySQL服務(wù)
  • 在MySQL的安裝目錄下找到my.ini,如果沒(méi)有就把my-medium.ini復(fù)制為一個(gè)my.ini即可
  • 打開(kāi)my.ini以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并關(guān)閉
  • 啟動(dòng)MySQL服務(wù)并查詢此時(shí)編碼方式
show variables like 'character%';
看看大部分是不是都是utf8 了
如果是頁(yè)面提交數(shù)據(jù)后亂碼的話,設(shè)置下頁(yè)面的編碼為 utf-8,以及連接數(shù)據(jù)庫(kù)的時(shí)候加入charset的格式utf-8
傻丟丟 回答

not in 可以換成id > 8 ... union all ... id < 7
!= 也可以這樣換,不過(guò)沒(méi)看到你給userid加索引
或許可以用with優(yōu)化,mysql不熟,
postgresql可以用explain analyse分析,共同學(xué)習(xí)吧

共同學(xué)習(xí)為什么要踩一下?不明白

explain analyse SELECT * FROM filemail.bottles WHERE id>8 AND userid != 34790331 AND show_times <= 10 AND status = 1
UNION ALL
SELECT * FROM filemail.bottles WHERE id<7 AND userid != 34790331 AND show_times <= 10 AND status = 1
ORDER BY reply_rate DESC, reward DESC
這樣id的索引可以使用

QUERY PLAN
Index Scan using bottles_pkey on bottles (cost=0.29..117.04 rows=9
Index Cond: (id < 1000)
Total runtime: 0.352 ms

EXPLAIN

乞許 回答

我覺(jué)得樓上的兩種做法欠妥,因?yàn)?code>count的實(shí)現(xiàn)是這樣的

> db.tasks.count
function ( x ){
    return this.find( x ).count();
}

這是在mongodb的cli里面輸出的。
一句話概述就是count其實(shí)還是調(diào)用的find。
所以這種查兩次數(shù)據(jù)庫(kù)的方法我認(rèn)為是欠妥的。

維她命 回答

scoped_session好像是一個(gè)輪巡,這樣寫(xiě)的化好像是支持并發(fā)

念舊 回答

id 是一個(gè)數(shù)字,怎么可能即是 3 又是 7 。

安于心 回答

你的this,在渲染的時(shí)候,已經(jīng)丟失了吧……這里也許在click的時(shí)候應(yīng)該使用箭頭函數(shù)才能把this帶過(guò)去

瞄小懶 回答

不行,只有自增。

如果是倒序就是自減了,那最大從多少開(kāi)始呢? 沒(méi)法預(yù)估。

陌離殤 回答

后來(lái)自己根據(jù)一樓做了測(cè)試,首先執(zhí)行了一下兩個(gè)語(yǔ)句
SELECT * FROM media_info WHERE media_id = 0

SELECT * FROM media_info WHERE media_id = '%'+'bb'+'%'

發(fā)現(xiàn)結(jié)果相同,業(yè)績(jī)證實(shí)了,@范捷琦Jackie的說(shuō)法是正確的,在這樣情況下會(huì)將media強(qiáng)制轉(zhuǎn)化為為0整數(shù),而【'%'+'bb'+'%'】這個(gè)值也是為零的。然后我又做了一下測(cè)試【SELECT * FROM media_info WHERE media_id =1】,然后發(fā)現(xiàn)匹配出來(lái)的是media_id以1開(kāi)頭的數(shù)據(jù),所以猜測(cè)應(yīng)該是,【當(dāng)利用=進(jìn)行整數(shù)判斷時(shí),會(huì)根據(jù)你所匹配的值,來(lái)進(jìn)行首字母匹配對(duì)應(yīng)的數(shù)據(jù)】

枕頭人 回答

第三方登錄的單獨(dú)存一張表,然后和client表關(guān)聯(lián)

憶往昔 回答
  1. 雖然你是多線程抓取數(shù)據(jù),但是你操作sqlite的client是同一個(gè),對(duì)于sqlite來(lái)說(shuō),只有一個(gè)連接,只是你在多線程里插入的時(shí)候,順序是不能保證的,因?yàn)閏lient是搶占式的
  2. 你可以把數(shù)據(jù)放到線程安全的數(shù)據(jù)集中,例如,ConcurrentQueue
萌面人 回答

當(dāng)成一個(gè)普通變量導(dǎo)出引入得了。

const locals = '123';

module.exports = {
    locals: locals
};

//-------------------------------------
const app = require('./app')

console.log(app.locals)
陌上花 回答

修改配置文件后

clipboard.png

應(yīng)該是重啟命令不能用service postgresql restart
service postgresql reload
service postgresql reload才可以https://jingyan.baidu.com/art...
似乎是 postgres.conf 使用restart pg_hba使用reload

我是使用如下的方法進(jìn)行的,同時(shí)修改配置文件后不,使用service postgresql reload命令來(lái)重啟,最后使用登錄成功
第二種方法,使用shell命令行。

添加新用戶和新數(shù)據(jù)庫(kù),除了在PostgreSQL控制臺(tái)內(nèi),還可以在shell命令行下完成。這是因?yàn)镻ostgreSQL提供了命令行程序createuser和createdb。還是以新建用戶dbuser和數(shù)據(jù)庫(kù)exampledb為例。

首先,創(chuàng)建數(shù)據(jù)庫(kù)用戶dbuser,并指定其為超級(jí)用戶。

sudo -u postgres createuser --superuser dbuser

然后,登錄數(shù)據(jù)庫(kù)控制臺(tái),設(shè)置dbuser用戶的密碼,完成后退出控制臺(tái)。

sudo -u postgres psql

password dbuser

q

接著,在shell命令行下,創(chuàng)建數(shù)據(jù)庫(kù)exampledb,并指定所有者為dbuser。

sudo -u postgres createdb -O dbuser exampledb

登錄數(shù)據(jù)庫(kù)

添加新用戶和新數(shù)據(jù)庫(kù)以后,就要以新用戶的名義登錄數(shù)據(jù)庫(kù),這時(shí)使用的是psql命令。

psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432

上面命令的參數(shù)含義如下:-U指定用戶,-d指定數(shù)據(jù)庫(kù),-h指定服務(wù)器,-p指定端口。

輸入上面命令以后,系統(tǒng)會(huì)提示輸入dbuser用戶的密碼。輸入正確,就可以登錄控制臺(tái)了。

假灑脫 回答

你是當(dāng)前執(zhí)行commit的線程查詢,當(dāng)然能查到。換成mysql client再試一下,就查不到了。

笨尐豬 回答

這種方式是可以的,就象第三方登錄,你的執(zhí)行方式還是前臺(tái)請(qǐng)求后臺(tái)api,后臺(tái)在請(qǐng)求第三方登錄接口,再根據(jù)第三方授權(quán)返回的用戶openid存入對(duì)應(yīng)的用戶賬號(hào)內(nèi)進(jìn)行關(guān)聯(lián)識(shí)別,所以完全可以

前端連接當(dāng)然可以,這個(gè)就基于你的業(yè)務(wù)邏輯,如果業(yè)務(wù)邏輯不需要對(duì)獲取的數(shù)據(jù)處理就不需要后端做中轉(zhuǎn),否則就需要后臺(tái)做中轉(zhuǎn)

如果網(wǎng)絡(luò)正常,執(zhí)行時(shí)間短,是可以忽略中間傳輸時(shí)間的

喵小咪 回答

使用回調(diào)的話沒(méi)有好的辦法吧。因?yàn)槎际钱惒降?你那幾個(gè)數(shù)據(jù)庫(kù)操作基本都是立馬就執(zhí)行了。建議你使用promise結(jié)合 async/await來(lái)做 就很容易實(shí)現(xiàn)了

悶騷型 回答

應(yīng)該是你的解析json數(shù)據(jù)出錯(cuò)導(dǎo)致的

mycat 慎用 感覺(jué)領(lǐng)導(dǎo)者在搞傳銷一樣 加群你就知道了 天天做培訓(xùn) 問(wèn)個(gè)問(wèn)題 都要紅包

悶油瓶 回答

$sql = "select count(*) as userNum from ajax_test1 where userName='$uName'";

$result = mysqli_query($con, $sql);
$res = mysqli_fetch_array($result);
//print_r($res);
echo $res['userNum'];