在新增資料進入Table時,跳出錯誤訊息:[字串或二進位資料會被截斷]
其發生的原因:當Data長度大於欄位定義長度時,且在Insert 或 Update就會發生此錯誤訊息。
網誌存檔
2012年12月26日 星期三
2012年12月4日 星期二
Visual C# 2010 陣列搜尋、拷貝、清除 - 20121203
陣列的搜尋:
※若找到傳回該陣列元素的註標值;相反的,若沒找到就回傳-1 。此陣列不必先經過排序,故每次搜尋資料都是由最前面開始,但資料量大時,查詢所花費時間會越多。
範例:字串陣列 KK中有{"A","B","C","D","E","F"}六個陣列元素,若Str="E", Start=0 , Offset=2,
其Array.IndexOf(KK , Str , Start , Offset)
結果:由標註1(=B)開始往下找3個陣列元素(=B、C、D),其內容是否有"E",傳回的值為-1。
※此陣列必須先經過由小而大排序才可使用,適用於資料量大的陣列。
------------------------------------------------------------------------------------------------------
陣列的拷貝:
語法:Array.Copy( A , Aindex , B , Bindex , length );
- Array.IndexOf( )方法:用來搜尋陣列中是否有符合的資料,若有找到就傳回該陣列元素的[註標值];若沒有找到的話,會傳回-1。
公式:Array.IndexOf( 陣列名稱 , 查詢資料 [ , 起始註標] [ , 查詢距離] );
※使用Array.IndexOf( )方法來搜尋陣列中的資料,不必先經過排序,每次搜尋資料都是由最前面開始,當資料量大時,愈後面的資料查詢所花費的時間愈多,且資料的平均搜尋時間不平均。
範例:字串陣列 KK中有{"A","B","C","D","E","F"}六個陣列元素,若Str="E", Start=0 , Offset=2,
其Array.IndexOf(KK , Str , Start , Offset)
結果:由標註1(=B)開始往下找3個陣列元素(=B、C、D),其內容是否有"E",傳回的值為-1。
- Array.BinarySearch( )方法:使用之前陣列必須先經由小而大排序才可,此方法適用資料量大的陣列。
公式:Array.BinnarySearch( 陣列名稱 , 查詢資料 );
※此陣列必須先經過由小而大排序才可使用,適用於資料量大的陣列。
※使用Array.BinarySearch( )方法來二分化搜尋資料, 陣列必須先經過由小而大排序才可以使用,且此方法適用於資料量大的陣列中。
------------------------------------------------------------------------------------------------------
陣列的拷貝:
語法:Array.Copy( A , Aindex , B , Bindex , length );
- A:來源A陣列(被拷貝的陣列)。
- Aindex:來源A陣列的註標,由指定的註標開始複製。
- B:接收資料的目的B陣列。
- Bindex:目的B陣列的註標,由指定的註標開始儲存。
- length:複製的陣列元素個數。
陣列的清除:
語法:Array.Clear( A , Aindex , length );
- A:來源A陣列(被拷貝的陣列)。
- Aindex:來源A陣列的註標,由指定的註標開始清除。
- length:清除的陣列元素個數。
2012年12月1日 星期六
Visual C# 2010 陣列宣告、排序、反轉 - 20121130
陣列宣告方式:
方式一、資料型別 [ ] 陣列名稱;
陣列名稱 = new 資料型別 [大小];
如:int [ ] myArray;
myArray = new int[3];
方式二、資料型別 [ ] 陣列名稱 = new 資料型別[大小]{陣列初值};
如:int [ ] myArray = new int[3]{6,5,8}; 或 int [ ] myArray = new int[ ]{6,5,8};
※建立[陣列]時未設定初始值,如[數值資料型別]預設值為[零];[字串資料型別]預設為[null];[布林值資料型別]預設為[false]。
陣列的排序:此指定一維物件由[小而大]作遞增排序。
方法一、Array.Sort(陣列物件);
方法二、Array.Sort(陣列物件1,陣列物件2);
陣列的反轉:由[大而小]作遞減排列。
方法、Array.Reverse(陣列物件);
※陣列必須先作(Sort)排列後,在作(Reverse)反轉。
※假若同時有兩個相關的陣列A和B,若以A陣列為基準由大到小做排序,其相關陣列需要同時反轉。寫法如下:
Array.Sort(A,B); //將A陣列先做由小而大排序,B陣列亦跟著修改。
Array.Reverse(A); //將A陣列先做反轉,變成由大而小排序。
Array.Reverse(B); //將B陣列做反轉。
方式一、資料型別 [ ] 陣列名稱;
陣列名稱 = new 資料型別 [大小];
如:int [ ] myArray;
myArray = new int[3];
方式二、資料型別 [ ] 陣列名稱 = new 資料型別[大小]{陣列初值};
如:int [ ] myArray = new int[3]{6,5,8}; 或 int [ ] myArray = new int[ ]{6,5,8};
※建立[陣列]時未設定初始值,如[數值資料型別]預設值為[零];[字串資料型別]預設為[null];[布林值資料型別]預設為[false]。
陣列的排序:此指定一維物件由[小而大]作遞增排序。
方法一、Array.Sort(陣列物件);
方法二、Array.Sort(陣列物件1,陣列物件2);
陣列的反轉:由[大而小]作遞減排列。
方法、Array.Reverse(陣列物件);
※陣列必須先作(Sort)排列後,在作(Reverse)反轉。
※假若同時有兩個相關的陣列A和B,若以A陣列為基準由大到小做排序,其相關陣列需要同時反轉。寫法如下:
Array.Sort(A,B); //將A陣列先做由小而大排序,B陣列亦跟著修改。
Array.Reverse(A); //將A陣列先做反轉,變成由大而小排序。
Array.Reverse(B); //將B陣列做反轉。
2012年11月28日 星期三
Visual C# 2010 資料型別轉換 - 20121127
取得資料型別方法:
變數.GetType( ):傳回變數、物件或運算是結果的資料型別。
-------------------------------------------------------------------------
byte.parse(str) :將字串轉換成byte型別資料。
int.parse(str):將字串轉換成整數(int)型別資料。
uint.parse(str):將字串轉換成不帶正負號的整數(unit)型別資料。
long.parse(str):將字串轉換成長整數(long)型別資料。
ulong.parse(str):將字串轉換成不帶正負號的長整數(ulong)型別資料。
float.parse(str):將字串轉換成單精確度(float)型別資料。
double.parse(str):將字串轉換成倍精確度(double)型別資料。
Decimal.parse(str):將字串轉換成Decimal型別資料。
bool.parse(str):將字串轉換成布林(boolean)型別資料。
DateTime.parse(str):將字串轉換成日期時間(DateTime)型別資料。
物件.ToString( ):將變數、物件或運算式轉換成字串(string)型別資料。
※資料在進行運算時,常因前後的資料型別不一致,導致發生不可預期的錯誤。
----------------------------------------------------------------------------------------------------
補充:2015/1/20
C#轉換成數字的方法:int.Parse( )、int.TryParse( )、Convert.ToInt32( )
將「字串」等型態的值轉換成「數字」是常用到的轉換,但轉換失敗的時候,會產生錯誤,但可使用Try ....Catch去處理例外狀況,但採用int.TryParse( )方便多了,因為傳換失敗時,會回傳false和數字0。
※要轉換成「數字」或「貨幣」,先用Convert.ToInt32()方法轉成「整數」,不然「字串」可能無法透過String.Format()正確輸出應有的格式。
--------------------------------------------------------------------------------------------------
在windows 7底下[開啟隱藏的副檔名]的方法:
[方法一]
開始 → 控制台 → 檢視方式:大(小)圖示 → 資料夾選項 → 檢視 → [取消]隱藏已知檔案類型的副檔名。
[方法二]
任何一個資料夾中,按下Alt鍵,視窗就出現[工具列],然後點選[工具] → 資料夾選項 .....
在上圖中的副檔名: *.csprog 為[專案檔]、*.sln為[方案檔]、*.cs為[程式檔]。
※假若想重新編輯程式的話,點選開啟[*.csprog] 或 [*.sln]就可以開起該專案。
在上圖中,程式編譯無誤後,會在目前專案資料夾下產生[*.exe執行檔]。
----------------------------------------------------------------------------------------------------
補充:2015/1/20
C#轉換成數字的方法:int.Parse( )、int.TryParse( )、Convert.ToInt32( )
將「字串」等型態的值轉換成「數字」是常用到的轉換,但轉換失敗的時候,會產生錯誤,但可使用Try ....Catch去處理例外狀況,但採用int.TryParse( )方便多了,因為傳換失敗時,會回傳false和數字0。
※要轉換成「數字」或「貨幣」,先用Convert.ToInt32()方法轉成「整數」,不然「字串」可能無法透過String.Format()正確輸出應有的格式。
--------------------------------------------------------------------------------------------------
在windows 7底下[開啟隱藏的副檔名]的方法:
[方法一]
開始 → 控制台 → 檢視方式:大(小)圖示 → 資料夾選項 → 檢視 → [取消]隱藏已知檔案類型的副檔名。
[方法二]
任何一個資料夾中,按下Alt鍵,視窗就出現[工具列],然後點選[工具] → 資料夾選項 .....
在上圖中的副檔名: *.csprog 為[專案檔]、*.sln為[方案檔]、*.cs為[程式檔]。
※假若想重新編輯程式的話,點選開啟[*.csprog] 或 [*.sln]就可以開起該專案。
在上圖中,程式編譯無誤後,會在目前專案資料夾下產生[*.exe執行檔]。
2012年10月17日 星期三
Visual C# 2010 常用內建物件 - 20121016
ASP.NET常用的內建物件:
- Response:用來將Server端的資料傳送到Client端。
- Request:用來取得Client端瀏覽器所傳送的內容。
- Server:用來使用Server端的功能與讀取Server端的資訊。
- Cookie:用來儲存使用者瀏覽網站的資訊。
- Session:用來記錄個別Client端的變數。
- Application:用來記錄所有Client端的變數。
2012年8月26日 星期日
Visual C# 2010 Write與WriteLine差異 - 20120925
Write 或 WriteLine方法: 將資料顯示在螢幕上。
Console.Write( )與Console.WriteLine( )差異:
其Console.WriteLine( )在輸出字串的最後面自動加入換行字元;若Console.WriteLine( )小括號內未加任何引數可用來[空一行]。
-------------------------------------------------------------------------------------------------
Read 或 ReadLine方法:提供由鍵盤輸入字元。
Console.Read( )方法:當需要按任意鍵繼續時,或只允許需要輸入一個字元時使用。
Console.ReadLine( )方法:當需要輸入字串時使用。因此方法傳入的資料是屬於string型別,因此若使用Console.ReadLine( )方法傳入的字串資料指定給整數變數時,必須使用int.Parse( ) 或 Convert.ToInt32( )方法將字串轉整數。
Console.Write( )與Console.WriteLine( )差異:
其Console.WriteLine( )在輸出字串的最後面自動加入換行字元;若Console.WriteLine( )小括號內未加任何引數可用來[空一行]。
-------------------------------------------------------------------------------------------------
Read 或 ReadLine方法:提供由鍵盤輸入字元。
Console.Read( )方法:當需要按任意鍵繼續時,或只允許需要輸入一個字元時使用。
Console.ReadLine( )方法:當需要輸入字串時使用。因此方法傳入的資料是屬於string型別,因此若使用Console.ReadLine( )方法傳入的字串資料指定給整數變數時,必須使用int.Parse( ) 或 Convert.ToInt32( )方法將字串轉整數。
訂閱:
文章 (Atom)