我需要插入一個名爲「實踐」爲表「cred_insurances」列,它是一個FK引用表「實踐」 PK「ID」MySQL的FK語法:插入列叫做修煉成表cred_insurances是FK表的做法
回答
您需要通過從mysql提示符處運行以下命令來確保MySQL表正在使用InnoDB引擎。
show create table cred_insurances
輸出將包括(朝底部)文本ENGINE=...
。如果它不是InnodDB,那麼您首先需要使用以下SQL進行轉換。您可能還需要對父表執行此操作。
ALTER TABLE cred_insurances ENGINE=InnoDB
然後你就可以添加在柱上,用下面的命令一個外鍵約束:
ALTER TABLE cred_insurances
ADD practice INT,
ADD CONSTRAINT fk_practice
FOREIGN KEY (practice) REFERENCES practices (ID)
如果您有錯誤的困難,同時加入了一個外鍵,嘗試使用以下命令獲取有關錯誤的更多詳細信息。
SHOW ENGINE INNODB STATUS
@ar:我改變了兩個表InnoDB好,但我一直收到「ERROR 1005(HY000):無法創建表'./credentialing1/#sql-8e1_58.frm'(errno:150)」當我運行命令。建議嗎? – 2010-10-23 12:55:23
@ar:在更改回MyISAM後,我能夠執行您的命令,但是如何驗證它呢? – 2010-10-23 15:20:45
@ar:在沒有任何ISAM的情況下,我能夠做到我需要的東西來改變InnoDB。爲什麼你覺得有必要增加這種複雜性?必須有一些令人信服的理由,不是嗎? – 2010-10-25 17:17:56
- 1. Mysql:插入兩個表的過程(FK)
- 2. C#插入FK表asp.net
- 3. MySQL加入多個表+ FK
- 4. MySQL的插入觸發器後與FK表到第一表
- 5. 做UPSERT當行由FK
- 6. MySQL插入數據並設置FK的?
- 7. PDO插入到兩個表FK數據
- 8. SQL - 多行插入的FK
- 9. MySQL在FK的
- 10. 許多fk表的一個表列?
- 11. Fk在不同的模式中,這是一個很好的做法嗎?
- 12. 插入Symfony fk問題
- 13. Fluent NHibernate:將NULL插入到FK列
- 14. FK是否總是與父表的字段「id」相關?一個不好的做法指向另一個領域?
- 15. MySQL Workbench ...填充fk列
- 16. 無法在MySQL中設置FK限制
- 17. sql修改主鍵這是在其他表中的一個fk
- 18. 流利的NHibernate插入空FK
- 19. 插入由fk鏈接的多行 - php
- 20. SharePoint列表最佳做法
- 21. 使用FK的Entity框架將數據插入到多表中
- 22. 將多個(fk)數據插入兩個phpMyAdmin表中的一個
- 23. 如何爲具有FK關係的表創建插入腳本
- 24. MySQL:許多表將FK添加到一張表中 - 是或否?
- 25. 將列插入表格的語法
- 26. 鏡像MySQL表的錯誤做法?
- 27. MySQL和FK約束
- 28. JDBC MYSQL FK實現
- 29. ORACLE語法:這叫做什麼?
- 30. MySQL的大FK標識
如果您需要向我們展示更多信息,例如:來自命令的輸出,然後請將其添加到原始帖子中,而不是將其添加爲註釋。謝謝。 – 2010-10-26 14:32:05