1. 程式人生 > >學生管理系統之新增學籍模組問題集錦:錯誤91,錯誤-2147217887,資料庫更改的儲存問題

學生管理系統之新增學籍模組問題集錦:錯誤91,錯誤-2147217887,資料庫更改的儲存問題

        這一模組進行了很長時間了,聽了師傅的話一個一個模組的開始除錯,果然沒有錯啊,很慶幸沒有全敲完在除錯,否則一個一個的除錯真的很亂的啊。這一次的除錯又長知識了。

        首先,已經進入到修改學籍介面了,但是錯誤又來了,還是一個很可怕的錯誤“91”,這兩個數字不想看見啊,因為一出現就是資料庫有問題,但是再一想已經到了這個介面了,資料庫怎麼會有問題呢,自己也搜了很多文章,沒有找到結果,最後不得不請教了一下高人啊。最後發現是SQL Server資料型別的錯誤。最後將資料型別改為nvarchar(50)解決問題。

①接下來就介紹一下,int資料型別吧。

1、int、bigint、smallint 和 tinyint是使用整數資料的精確數字資料型別。

2、主要型別、範圍、儲存體如下:

1)bigint:從 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型資料,儲存 8 個位元組。

2)int:從 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型資料。儲存 4 個位元組

3)smallint:從 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型資料,儲存2 個位元組。

4)tinyint:從 0 到 255 的整型資料,儲存 1 位元組。

②varchar(n)和nvarchar(n)

區別:

varchar(n)

長度為 n 個位元組的可變長度且非 Unicode 的字元資料。n 必須是一個介於 1 和 8,000 之間的數值。儲存大小為輸入資料的位元組的實際長度,而不是 n 個位元組。

nvarchar(n)

包含 n 個字元的可變長度 Unicode 字元資料。n 的值必須介於 1 與 4,000 之間。位元組的儲存大小是所輸入字元個數的兩倍。

varchar(4) 可以輸入4個字線,也可以輸入兩個漢字

nvarchar(4) 可以輸四個漢字,也可以輸4個字母,但最多四個

varchar是一個英文和一個漢字都站兩個位元組,而Nvarchar則是一個英文佔一個位元組,漢字佔兩個位元組。

varchar(n)

長度為 n 個位元組的可變長度且非 Unicode 的字元資料。n 必須是一個介於 1 和 8,000 之間的數值。儲存大小為輸入資料的位元組的實際長度,而不是 n 個位元組。

nvarchar(n)

包含 n 個字元的可變長度 Unicode 字元資料。n 的值必須介於 1 與 4,000 之間。位元組的儲存大小是所輸入字元個數的兩倍。

       其次是在資料庫更改後的時候進行儲存,此時出現了這樣的提示

此時的解決方法就是選單欄的工具,選項

將阻止取消即可。

     最後一個為題就是“實時錯誤-2147217887”

這個也和int 的差不多,更改一下資料庫的資料型別即可。