第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Postgres 和 Laravel 如何將列從字符串類型更改為整數(shù)?

Postgres 和 Laravel 如何將列從字符串類型更改為整數(shù)?

PHP
茅侃侃 2023-08-11 17:55:05
我正在嘗試將 Postgres 和 Laravel 6.x 上的列從字符串類型更改為整數(shù)。我嘗試通過這樣的遷移來做到這一點:    public function up()    {        Schema::table('job_listings', function (Blueprint $table) {            $table->integer('company_id')->change();        });    }當(dāng)我運行此遷移時,出現(xiàn)錯誤,表明該列無法自動轉(zhuǎn)換為整數(shù):In Connection.php line 664:  SQLSTATE[42804]: Datatype mismatch: 7 ERROR:  column "company_id" cannot be cast automatically to type integer  HINT:  You might need to specify "USING company_id::integer". (SQL: ALTER TABLE job_listings ALTER company_id TYPE INT)In PDOStatement.php line 123:  SQLSTATE[42804]: Datatype mismatch: 7 ERROR:  column "company_id" cannot be cast automatically to type integer  HINT:  You might need to specify "USING company_id::integer".In PDOStatement.php line 121:  SQLSTATE[42804]: Datatype mismatch: 7 ERROR:  column "company_id" cannot be cast automatically to type integer  HINT:  You might need to specify "USING company_id::integer".在 PostgreSQL 中,我們?nèi)绾沃付?USING 將此列從字符串類型更改為整數(shù)類型?
查看完整描述

2 回答

?
千萬里不及你

TA貢獻1784條經(jīng)驗 獲得超9個贊

您必須指定顯式轉(zhuǎn)換,因為沒有從文本或 varchar 到整數(shù)的隱式(自動)轉(zhuǎn)換。我不知道 Laravel 函數(shù)來指定強制轉(zhuǎn)換,因此我建議您使用原始 DB 語句來實現(xiàn)此目的。


你可以這樣做:


public function up()

{

    DB::statement('ALTER TABLE job_listings ALTER COLUMN 

                  company_id TYPE integer USING (company_id)::integer');

}

在某些情況下,文本或 varchar 字段中可能存在空格,因此您必須在轉(zhuǎn)換之前進行修剪


public function up()

{

    DB::statement('ALTER TABLE job_listings ALTER COLUMN 

                  company_id TYPE integer USING (trim(company_id))::integer');

}


查看完整回答
反對 回復(fù) 2023-08-11
?
Helenr

TA貢獻1780條經(jīng)驗 獲得超4個贊

即使表有行或沒有行,它仍然返回該錯誤。因此,如果您不想要原始查詢并且您的列沒有值或有但不重要,只需刪除列并創(chuàng)建新的列:


public function up()

{

    Schema::table('job_listings', function (Blueprint $table) {

        $table->dropColumn('company_id');

        $table->integer('company_id');

    });

}


查看完整回答
反對 回復(fù) 2023-08-11
  • 2 回答
  • 0 關(guān)注
  • 216 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號