前言
前面已經給大家總結了一些關於數據庫的問題,基本上大家遇到的數據庫問題,都能從下面的文章中找到答案,希望大家可以收藏一下,遇到問題,可以一一對照去查找原因。
其實,大家在學習數據庫的時候,可能還會遇到各種奇奇怪怪的問題,今天我們針對這些零散的問題,做一下具體的分析。
希望可以爲大家學習數據庫鋪平道路。
常見錯誤1
錯誤提示:不支持關鍵字“sever”。
《C#程序》的錯誤提示:
【問題分析】:只要是在連接對象創建中,提示“不支持關鍵字的”,就是這個關鍵字寫錯了。
解決方案
仔細覈對就行了。比如上面的,就是把Server寫成了sever,常見的其他的還有把DataBase寫成DateBase等。這個要求你必須認真檢查,改正後,錯誤就解決了。
常見錯誤2
錯誤提示:ConnectionString屬性尚未初始化。
《C#程序》的錯誤提示:
解決方案
這種錯誤很容易解決,就是new 連接對象的時候,忘記把連接字符串放進去了,按照如下改正即可:
常見錯誤3
錯誤提示:Connection屬性尚未初始化。
《C#程序》的錯誤提示:
【問題分析】此問題和上面的問題有些類似,都是屬性尚未初始化,但是這裏的問題是指Connection,這個是連接對象,而上面的是連接字符串ConnectionString,所以問題解決方式一樣,但是位置不一樣。Connection對象屬性未初始化問題是因爲SqlCommand構造的時候,沒有傳遞進去。
解決方案
所以按照如下修改即可:
常見錯誤4
錯誤提示:列名“EmployeName”無效。
《C#程序》的錯誤提示:
解決方案
主要提示列名無效的,請檢查提示的這個列名稱是不是真的寫錯了,也就是從SQL語句中去直接查看(這個不要調試,直接看就可以),如果真的寫錯了,就修改,比如上面的EmployeeName確實寫成了EmployeName,也就是少了一個e,所以提示錯誤。主要改過來就行了。
常見錯誤5
錯誤提示:列名“韓老師”無效。
《C#程序》的錯誤提示:
解決方案
都是同樣的錯誤告訴我們列名無效,但是現在這個列並不是真實的列名稱,而是我們給列對應的一個值,這種情況,通常是使用格式化的SQL語句時,需要添加單引號的佔位符,卻沒有添加造成的,很明顯第一個佔位符 {0} 因爲是字符串類型,必須添加單引號,添加後,錯誤就沒有了。
常見錯誤6
錯誤提示:對象名“Employeeinner”無效。
《C#程序》的錯誤提示:
解決方案
其實本錯誤如果細心的話,是可以直接看出來的,C#中把數據庫中的表,也稱爲對象,所以這裏說的對象名無效,也就是說表的名稱無效,而在查詢語句中,我們用的表是Employee,這裏很顯然後面多了inner,也就是說inner和Employee直接缺少的空格,所以加上空格問題就馬上解決。
常見錯誤7
錯誤提示:從字符串轉換日期和/或時間時,轉換失敗。
《C#程序》的錯誤提示:
解決方案
反射調試日期或時間,轉換無效的,我們就直接定位到“日期”字段對應的值,在SQLServer裏面對日期的格式要求非常嚴格,我們常用的日期格式爲“2022-01-01或2022/02/02”,(但是也有其他格式,但是不推薦)所以,帶着漢字的“年月日”這種格式肯定是不行的,有時候,有的學員可能也會用到,帶着“星期”的日期,這種都是不符合規範的。所以上面的問題解決,就是直接把“2014年1月18日”這種日期格式改成“2014-01-18”就可以了。
常見錯誤8
錯誤提示:輸入的字符串格式不正確。
《C#程序》的錯誤提示:
解決方案
這種錯誤出現的位置和前面的統稱都不一樣,是在字符串格式的位置出現的,所以,我們重點觀察佔位符,如果仔細觀察的話,會發現,在佔位3個位置,把花括號寫成了中括號,從而導致這個錯誤,這種錯誤希望大家能記住排查問題的要點,歸根結底還是要仔細。
常見錯誤9
錯誤提示:輸入的字符串格式不正確。
《C#程序》的錯誤提示:
【問題分析】:在我們學習DataReader對象的時候,其實重點強調了DataReader對象在數據沒有讀取完畢之前,是不能關閉的,因爲這個對象要求必須保持數據庫的連接,而這裏提示閱讀器關閉,那肯定程序裏面調用了Close()方法,其實打開後臺的通用類看一下就明白了。
解決方案
把整個finally全部刪掉就行了。
總結
以上就是大家學習數據庫時可能會出現的一些零散問題,針對這些問題老師們特此做了總結歸納,希望可以幫助大家。