精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

初學laravel migrate常見錯誤解決

開發 后端
斷斷續續開始 laravel 入門學習,想整個簡單的通訊錄系統,設立了兩個表,一個 branches ,一個 contacts。在創建 migration 文件的時候,沒有考慮仔細,先把 contacts 表建立了,contacts 表有個外鍵連接到 branches 的 id,結果執行 migrate 命令的時候,出現以下錯誤。

斷斷續續開始 laravel 入門學習,想整個簡單的通訊錄系統,設立了兩個表,一個 branches ,一個 contacts。在創建 migration 文件的時候,沒有考慮仔細,先把 contacts 表建立了,contacts 表有個外鍵連接到 branches 的 id,結果執行 migrate 命令的時候,出現以下錯誤:

  1. [Illuminate\Database\QueryException] 
  2.  
  3. SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table `contacts` add constraint `contac 
  4.  
  5. ts_branch_id_foreign` foreign key (`branch_id`) references `branches` (`id`) on delete cascade
  6.  
  7. [PDOException] 
  8.  
  9. SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint  

初步懷疑是表創建先后不規范造成,于是,手動修改 branches 的 migration 文件名稱上的日期,再執行

  1. php artisan migrate:reset 

出現如下錯誤:

  1. [ErrorException] 
  2.  
  3. include(/Users/Ade/www/laravel_phonebook5.2): failed to open stream: Operation now in progress  

failed to open stream 錯誤解決

光看錯誤提示不是很理解,我們查看 laravel 的 log 文件

  1. more storage/logs/laravel.log 

找到出現 ERROR 的那段話:

  1. [2016-09-29 18:05:35] local.ERROR: exception 'ErrorException' with message 'include(/Users/Ade/www/laravel_phonebook5.2): failed to open stream: Operation now in progress' in /Users/Ade/www/laravel_phonebook5.2/vendor/composer/ClassLoader.php:412 
  2. Stack trace: 
  3. #0 /Users/Ade/www/laravel_phonebook5.2/vendor/composer/ClassLoader.php(412): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(2, 'include(/Users/...''/Users/Ade/www/...', 412, Array) 
  4. #1 /Users/Ade/www/laravel_phonebook5.2/vendor/composer/ClassLoader.php(412): Composer\Autoload\includeFile() 
  5. #2 /Users/Ade/www/laravel_phonebook5.2/vendor/composer/ClassLoader.php(301): Composer\Autoload\includeFile('/Users/Ade/www/...'
  6. #3 [internal function]: Composer\Autoload\ClassLoader->loadClass('CreateBranchesT...'
  7. #4 /Users/Ade/www/laravel_phonebook5.2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(335): spl_autoload_call('CreateBranchesT...'
  8. #5 /Users/Ade/www/laravel_phonebook5.2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(227): Illuminate\Database\Migrations\Migrator->resolve('2016_09_12_1728...'
  9. #6 /Users/Ade/www/laravel_phonebook5.2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(206): Illuminate\Database\Migrations\Migrator->runDown(Object(stdClass), false

錯誤出現在 ClassLoader.php 文件的 412 行

查看改行代碼,發現是一個調用文件的語句: 

而這個文件,在 log 文件中已經指出,即 resolve('2016_09_12_1728...') 。log 提示的這個名稱,就是我修改的 branch 的 migration 文件名稱。

我們再搜搜正常的 migration 文件會在哪些地方出現:

  1. mdfind 2014_10_12_000000_create_users_table.php|grep phonebook 

可見,正常的有 3 個地方出現,修改過的只有 1 個地方出現。

編輯這兩個未出現的文件

調整 autoload_static.php 文件

發現 vendor/composer/autoload_static.php 文件中,和 branches 相關的語句如下:

  1. 'CreateBranchesTable' => __DIR__ ., 

想來應該是改名的時候,PHP Storm自動幫我把這個文件里面有關 branches 文件路徑全部給刪掉了。加回去就好了。

參照正常的 migration 文件名的配置情況,補充為

  1. 'CreateBranchesTable' => __DIR__ . '/../..' . '/database/migrations/2016_09_12_172822_create_branches_table.php'

調整 autoload_classmap.php 文件

我們發現 autoload_classmap.php 文件中,有關 branches 的路徑名還是修改前的路徑:

  1. 'CreateBranchesTable' => $baseDir . '/database/migrations/2016_09_29_172822_create_branches_table.php'

將其修改為

  1. 'CreateBranchesTable' => $baseDir . '/database/migrations/2016_09_12_172822_create_branches_table.php'

再執行 migrate 命令

  1. php artisan migrate:reset 

 OK,剛才的錯誤沒了,不過我們又發現 contacts 表沒有回滾,

contacts 回滾失敗的分析

通過 sequel pro 連上數據庫查看

發現 contacts 表果然存在,但是 migration 表中已沒有內容,想必再執行前面 migrate 命令的時候出現錯誤,contacts 的執行記錄并沒有寫入 migrations 表中。我們可以重新執行 migrate 命令試試看。首先手動刪除這兩張表,也就是清空數據庫,然后執行:

  1. php artisan migrate 

我們先忽視創建 contacts 表出現的錯誤,刷新 sequel pro 查看一下:

果然,migration 表中沒有 contacts 的創建記錄,這也就難怪執行 reset 的時候,會沒有 contacts 的回滾操作了。

contacts 無法創建 branch_id 外鍵的解決

現在,我們已經執行了 migrate 命令,我們重新來看看這個最早出現的錯誤:

  1. [Illuminate\Database\QueryException] 
  2.  
  3. SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table `contacts` add constraint `contacts_branch_id_foreign` foreign key (`branch_id`) references `br 
  4.  
  5. anches` (`id`) on update cascade
  6.  
  7. [PDOException] 
  8.  
  9. SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint  

冷靜下來分析一下,既然提示的是 SQL 錯誤,我們不妨在 sequel pro 中手工執行一下這條 SQL 語句。 

果然,執行返回錯誤。

仔細查看語句并沒有錯誤,一想,應該是 branch_id 類型聲明和 branches 表中的 ID 類型不一致造成的吧。查看 contacts 的結構,發現 Unsigned 沒有打鉤,勾選后再執行增加外鍵的 SQL 語句,成功。

找到問題原因后,我們就清空數據庫,修改 contacts 的 migration 文件,調整 branch_id 為: 

  1. $table->integer('branch_id')->unsigned()->comment('機構ID'); 

再重新執行 migrate 命令,成功!

 

責任編輯:龐桂玉 來源: segmentfault
相關推薦

2020-11-05 18:53:15

JavaScript開發前端

2017-04-07 09:02:06

Spark方法優化

2010-04-19 14:33:06

Oracle tns配

2011-05-18 14:44:13

mysql1046錯誤

2013-05-30 14:21:38

2009-12-30 15:29:14

2011-06-08 09:37:19

C#Equals

2011-05-16 09:54:22

mysql1067錯誤

2022-10-19 23:18:27

KubernetesPod錯誤

2015-12-21 11:45:27

C語言常見問題錯誤

2009-12-18 11:03:45

Ruby watir環

2013-08-13 13:38:13

Android錯誤解決

2010-01-22 15:42:01

VB.NET錯誤

2010-07-27 11:19:18

Flex

2010-08-11 10:41:22

AdobeFlex

2010-05-26 13:14:22

MySQL錯誤解決方案

2019-10-09 13:39:39

Python編程語言異常錯誤

2010-07-08 14:24:21

SQL Server

2010-01-18 14:41:33

VB.NET抓取網頁

2012-08-15 14:01:18

點贊
收藏

51CTO技術棧公眾號

理论片一区二区在线| 污视频软件在线观看| 亚洲欧洲色图| 亚洲自拍偷拍麻豆| 91情侣在线视频| 色婷婷在线视频观看| 精品一区二区三区中文字幕在线| 国产精品久久久久久久久搜平片| 国产视频福利一区| 欧美激情图片小说| 国产精品乱战久久久| 亚洲成人精品影院| 91嫩草免费看| www.国产成人| 亚洲天堂日韩在线| 欧美中文字幕不卡| 天天做天天爱天天高潮| 性网爆门事件集合av| 亚洲每日更新| 亚洲视频999| 一起操在线视频| av电影免费在线观看| 国产成人精品三级| 欧美在线免费视频| 日日操免费视频| 亚洲精品影片| 日韩欧美国产黄色| 中文字幕久久综合| 色呦呦视频在线| 久久中文欧美| 久久国产精品首页| 自拍视频一区二区| 韩国成人漫画| 亚洲人成在线播放网站岛国| 国产精品一区二区三区精品| 在线免费一区二区| 中国成人一区| 亚洲美女性视频| 亚洲免费av一区| 91桃色在线观看| 亚洲国产精品t66y| 国产在线观看一区| 亚洲资源在线播放| 99av国产精品欲麻豆| 最近2019中文字幕mv免费看 | 特级特黄刘亦菲aaa级| 巨茎人妖videos另类| 亚洲伦理在线精品| 日韩中文字幕一区二区| 亚洲毛片在线播放| 日本人妖一区二区| www.亚洲一区| 欧美成人午夜精品免费| 国产一区精品二区| 在线看国产日韩| 国产一级爱c视频| 婷婷免费在线视频| 2023国产精品自拍| 成人资源视频网站免费| 国产又大又粗又长| 蜜臀久久99精品久久久久久9| 高清欧美电影在线| 成熟的女同志hd| 欧美日韩中文一区二区| 亚洲精品国产免费| av天堂一区二区| 精品一区二区三区免费看| 日本久久精品电影| av观看免费在线| 9999热视频在线观看| 亚洲人成小说网站色在线| 国产一区二区三区高清| 亚洲高清视频网站| 国产一区二区三区免费看| 国产精品美女久久久免费| 久久久久久久久久久影院| 在线成人www免费观看视频| 日韩中文字幕网| 免费看91的网站| 国产成人精品免费视| 日韩av中文字幕在线| 国产大尺度视频| 91精品啪在线观看国产手机 | 视频在线精品一区| 制服丝袜在线第一页| 久久久久久一区二区三区四区别墅| 福利微拍一区二区| 久久免费视频3| 超碰资源在线| 偷拍日韩校园综合在线| 精品这里只有精品| 欧美a级在线观看| 天天免费综合色| 欧美黑人在线观看| sis001亚洲原创区| 亚洲国产日韩精品| 久色视频在线播放| 免费观看一级欧美片| 好吊成人免视频| 动漫av免费观看| 性欧美freehd18| 欧美日韩大陆在线| 极品人妻一区二区| 国产精品chinese在线观看| 日韩一级高清毛片| 亚洲天堂美女视频| 日韩激情毛片| 夜夜嗨av一区二区三区四区| 91激情视频在线| 成人在线免费电影网站| 69成人精品免费视频| 成人免费播放视频| 亚州一区二区| 亚洲国产精品中文| 欧美特级黄色录像| 久久久久久久久久久妇女 | 成人中文字幕合集| 免费不卡亚洲欧美| 欧美jizz18hd性欧美| 亚洲综合色噜噜狠狠| 成年人视频网站免费观看| 日韩在线影院| 91精品国产aⅴ一区二区| 中国免费黄色片| 狠狠色丁香婷婷综合影院| 久久精品成人欧美大片| 亚洲国产综合久久| 免费在线观看成人| 91蜜桃网站免费观看| 韩国中文免费在线视频| 亚洲欧美日韩一区二区三区在线观看| 免费av手机在线观看| 欧美色片在线观看| 日韩欧美精品在线视频| 性欧美精品男男| 欧美国产另类| 国产精品视频资源| 污视频网站在线播放| 亚洲国产岛国毛片在线| 黄色片网址在线观看| av一区在线| 亚洲精品99久久久久| 性欧美一区二区| 在线免费观看欧美| 91网站在线看| av在线电影播放| 精品电影在线观看| 伊人av在线播放| 日韩国产一区二区| 欧美激情伊人电影| 91极品身材尤物theporn| 国产成人av在线影院| 亚洲高清不卡一区| 另类专区亚洲| 亚洲精品国产欧美| 久久精品国产亚洲av高清色欲| 另类中文字幕网| 欧美一区二区三区四区在线观看地址| 欧美videosex性欧美黑吊| 欧美另类变人与禽xxxxx| 中文字幕免费看| 亚洲一级黄色| 成人av资源网| 黑人另类精品××××性爽| 91精品久久久久久久99蜜桃| 欧美黄色一级生活片| 欧美一区=区| 欧美亚洲爱爱另类综合| 欧美人与性动交xxⅹxx| 亚洲片av在线| 中文字幕 国产| 国产精品福利一区| 欧美性受xxxxxx黑人xyx性爽| 91日韩在线| 亚洲精品女av网站| 欧美日韩色网| 亚洲国产精品人人爽夜夜爽| 男人的天堂一区二区| 2021中文字幕一区亚洲| 国产黄色特级片| 国产一区毛片| 国产一区红桃视频| 欧洲黄色一区| 精品亚洲一区二区三区在线观看| 国产精品视频一区在线观看| 国产午夜精品一区二区三区嫩草| 少妇性l交大片| 久久影院100000精品| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 黄色av免费播放| 美腿丝袜亚洲综合| 奇米777四色影视在线看| 精品自拍偷拍| 国产91精品网站| 免费av网站在线看| 精品福利一区二区三区| 亚洲国产成人精品女人久久| 国产精品久久久久婷婷| 女人扒开腿免费视频app| 夜夜嗨一区二区| 亚洲精品成人三区| 91九色鹿精品国产综合久久香蕉| 性欧美激情精品| 岛国在线大片| 日韩免费在线观看| 91porny九色| 韩国视频一区二区三区| 国产九九九九九| 亚洲免费成人av在线| 国产精品高清在线| 成人片在线看| 亚洲国产美女精品久久久久∴| 欧美特级黄色片| 亚洲免费观看在线视频| 美女又爽又黄视频毛茸茸| 美女一区二区三区| 欧美日韩亚洲一| 91精品观看| 欧美高清性xxxxhd| 亚洲1区在线| 国产va免费精品高清在线观看| 久草免费在线观看| 亚洲精品一区中文字幕乱码| 国产口爆吞精一区二区| 日韩欧美aaa| 久久久久久久久久久网| 日本一区二区在线不卡| 稀缺小u女呦精品呦| 久久激情综合网| 欧美性大战久久久久xxx | 91麻豆精品国产91久久久久久 | 日韩国产欧美精品| 加勒比视频一区| 国产在线观看精品| 欧美自拍电影| 91精品国产91久久久久福利| 国产在线69| 一本色道久久88综合亚洲精品ⅰ | 超碰97在线播放| 国产福利一区二区三区在线播放| 97av在线视频免费播放| 欧美精品videosex| 久久久精品久久久久| 国产成人天天5g影院在线观看| 亚洲精品久久久久久久久久久久| www.五月天激情| 欧美二区在线观看| 中文字幕在线观看高清| 一本色道综合亚洲| 久久国产视频精品| 五月综合激情日本mⅴ| 麻豆疯狂做受xxxx高潮视频| 亚洲欧美在线高清| 99热在线观看精品| 中文字幕一区免费在线观看 | 一区二区三区欧洲区| 5566av亚洲| 久久69av| 亚洲精品日韩av| 国产色99精品9i| 91精品在线一区| 亚洲日本中文| 国产精品专区一| 91精品网站在线观看| 成人福利网站在线观看11| 亚洲精品成a人ⅴ香蕉片| 成人黄色免费片| 超碰国产精品一区二页| 92国产精品视频| 2023国产精华国产精品| 国产精品一区视频| 欧美调教视频| 欧美色欧美亚洲另类七区| 国产一区2区| 色视频一区二区三区| 加勒比久久综合| 亚洲午夜精品一区二区| 天天色天天射综合网| 久久久无码中文字幕久...| 亚洲欧美综合国产精品一区| 国产美女作爱全过程免费视频| 亚洲福利国产| 免费高清在线观看免费| 人人超碰91尤物精品国产| 日韩欧美国产片| 国产成人午夜精品5599| a级一a一级在线观看| 久久久91精品国产一区二区三区| 538精品视频| 亚洲丝袜美腿综合| 五月天婷婷网站| 91久久国产最好的精华液| 在线免费观看视频网站| 日韩免费福利电影在线观看| 日韩a在线观看| 日日骚av一区| 国产精品偷拍| 国产精品久久电影观看| 亚洲国产aⅴ精品一区二区| 精品国产_亚洲人成在线| 成人精品影视| 日韩精品久久一区二区| 久久精品官网| 四虎1515hh.com| 99精品在线免费| 91动漫免费网站| 亚洲成a人v欧美综合天堂| 超碰在线97观看| 精品国产乱码久久| 北岛玲日韩精品一区二区三区| 欧美激情第1页| 欧美一级二级视频| 国产成人av一区二区三区| 色偷偷综合网| 日韩在线综合网| 韩国av一区二区| 加勒比一区二区| 一区二区三区欧美日韩| www.五月婷婷.com| 亚洲第一综合天堂另类专| 精品国产白色丝袜高跟鞋| 日本视频久久久| swag国产精品一区二区| 亚洲午夜在线观看| 日韩精品乱码免费| 日韩精品人妻中文字幕有码 | 福利小视频在线观看| 欧美激情一区二区三区久久久| 欧美jizz18| 欧美精品尤物在线| 亚洲乱码视频| 一级日本黄色片| 国产精品国产三级国产普通话蜜臀 | 99久久精品国产亚洲精品| 欧美精品99久久| 成人免费毛片app| 日本午夜在线观看| 欧美日韩在线播| 免费在线黄色网址| 69久久夜色精品国产69| 丁香一区二区| 特级黄色录像片| 国产自产2019最新不卡| 亚洲不卡的av| 欧美日韩在线播放一区| 国产福利片在线| 日本韩国欧美精品大片卡二| 免费看久久久| 国产 日韩 欧美在线| 高清成人免费视频| 青草草在线视频| 正在播放亚洲一区| 国产91在线视频蝌蚪| 91久久精品美女| 亚洲精品成人| 欧美性受xxxxxx黑人xyx性爽| 中文字幕一区二区三区视频| 日本黄色中文字幕| 中文字幕精品www乱入免费视频| 欧洲一区二区三区精品| 日韩精品久久久免费观看| 日韩成人dvd| 日韩av网站在线播放| 欧美精品一二三| 成人av福利| 99热国产免费| 在线欧美三区| 国产a级黄色片| 欧美日韩美女在线观看| 日本啊v在线| 国产精品第一页在线| 日韩欧美自拍| 亚洲欧美日本一区二区| 亚洲免费av观看| 亚洲精品无遮挡| 6080yy精品一区二区三区| 蜜臀av免费一区二区三区| 成人黄色一区二区| 1024成人网| 成人爽a毛片一区二区| 欧美专区日韩视频| 欧美aaaa视频| 麻豆tv在线观看| 精品高清美女精品国产区| 国产三级视频在线| 91社区国产高清| 国产亚洲亚洲| 亚洲精品国产精品国自| 欧美一区二区私人影院日本| 久草在线资源站资源站| 久久久久久精| 精品一区二区三区蜜桃| 国产无码精品在线播放| 国产香蕉一区二区三区在线视频 | julia中文字幕一区二区99在线| 国产极品粉嫩福利姬萌白酱| 欧美国产日产图区| www.黄色一片| 日韩av片永久免费网站| 婷婷综合社区|