---恢復內容開始---
1:報錯
1.1、創建表時報錯
CREATE TABLE Admin (
A_ID VARCHAR(20) NOT NULL AUTO_INCREMENT,
pymysql.err.InternalError: (1063, "Incorrect column specifier for column 'A_ID'")
原因:自動增長列用int數據類型,不用varchar.
1.2、導出文件出錯
SELECT * FROM Admin OUTFILE '/文檔/database/Admin.txt'
The MySQL server is running with the --secure-file-priv option so it cannot
原因:mysql設置的權限,可以使用
show variables like '%secure%';查看 secure-file-priv 當前的值是什么
導出的數據必須是這個值的指定路徑才可以導出,默認有可能是NULL就代表禁止導出,所以需要設置一下
修改為: SELECT * FROM Admin INTO OUTFILE '/var/lib/mysql-files/Admin.txt';就可以了
1.3、插入表格數據出錯
mysql 1136錯誤 Column count doesn't match value count at row 1
原因:插入數據的列或者值數量格式不對應
1.4、導入ID數據出錯
Warning Code : 1264 Out of range value for column ‘buyer_tpl’ at row 1
原因:設置的ID為INT型,已經超過了unsigned的峰值4294967296了
修改:1:將int類型換成bigint
2 將int類型換成varchar()的
1.5、import unittest
from city_functions import get_city_country
class CityFuctionTestCase(unittest.TestCase):
def test_city_country_population():
city_country_population=get_city_country('santiago','chile',5000000)
self.assertEqual(city_country_population,'Santiago,Chile,population=5000000')
以上是我編寫的一個測試代碼,然而出現了takes 0 positional arguments but 1 was given。其根本原因是我沒有在類中的函數內引入self,即標紅處應該改成
def test_city_country_population(self):
這是一個很基本的,但是很嚴重的錯誤。只是因為測試類中無需寫__init__()函數,所以就連self都忘記了。。。。
==============================================================================================================
在編寫測試代碼時候,會出現屬性錯誤。我的問題是,在編寫的被測試代碼中,某個函數沒有給出return的值,致使測試代碼在調用這個函數進行斷言時,得不到值而出現錯誤。
self.queryModel.setHeaderData(0, Qt.Horizontal, "編號")