sql中有數據類型image。在sql2005幫助中對此解釋如下:
Microsoft SQL Server 2005 將超過 8,000 個字元的字元串和大於 8,000 位元組的二進制數據存儲為名為 text 和
image 的特殊數據類型。超過 4,000 個字元的 Unicode 字元串存儲為 ntext 數據類型。
例如,您需要將一個大型客戶信息文本文件 (.txt) 導入 SQL Server
資料庫。應將這些數據作為一個數據塊存儲起來,而不是集成到數據表的多個列中。為此,可以創建一個 text
數據類型的列。但是,如果必須存儲公司徽標,它們當前存儲為標記圖像文件格式 (TIFF) 圖像 (.tif) 且每個圖像的大小為 10 KB,則可以創建一個
image 數據類型的列。
如果要存儲的文本數據是 Unicode 格式,那麼應使用 ntext
數據類型。例如,一個為國際客戶創建的套用信函很可能包含用於各種不同語言的國際拼寫和字元。這種數據應存儲在 ntext 列中。
每個 text 和 ntext 數據值都具有排序規則。排序規則定義各種屬性,例如比較規則以及是否區分大小寫或重音。text
值的排序規則還指定了代碼頁,代碼頁定義用於表示每個字元的位模式。每個 ntext 值均使用對所有排序規則都相同的 Unicode
代碼頁。每個資料庫都有默認的排序規則。當創建 text 或 ntext 列時,除非使用 COLLATE
子句指定了特定的排序規則,否則將為其指定資料庫的默認排序規則。當組合或比較兩個具有不同排序規則的 text 或 ntext
值時,根據排序規則的優先規則來確定操作所使用的排序規則。
image 數據中的數據被存儲為位串,SQL Server 不對其進行解釋。對 image
列中的數據的任何解釋都必須由應用程序來完成。例如,應用程序可以用 BMP、TIFF、GIF 或 JPEG 格式將數據存儲在 image 列中。從 image
列中讀取數據的應用程序必須能夠識別數據的格式並正確顯示數據。image 列所做的全部工作就是提供一個位置,以存儲組成圖像數據值的位流。
通常情況下,text、ntext 或 image 字元串是存儲在數據行外的大型(最高可達 2 GB)字元或二進制字元串。數據行只包括一個
16 位元組的文本指針,該指針指向一個樹的根節點,該樹由映射存儲串片段的頁的內部指針構成。
使用 SQL Server,可將中小型 text、ntext 和 image
值存儲在一個數據行中,從而提高查詢訪問這些值的速度。
當 text、ntext 或 image 字元串存儲在數據行中時,SQL Server
無須訪問單獨的頁或頁集合來讀寫這些字元串。這使得對 text、ntext 或 image 行內字元串的讀取幾乎與對 varchar、nvarchar 或
varbinary 字元串的讀取一樣快。
若要在數據行中存儲 text、ntext 或 image 字元串,必須先使用 sp_tableoption 存儲過程啟用 text in
row 選項。
B. 在sql里如何把字元串轉化成image存儲
其實就是把字元串變化成二進制流進行存儲,可以實現,但我是在特定的編程環境下實現的,用UPDATEBLOB存儲,用SELECTBLOB訪問,讀入TXT文件或者是STRING變數都可以
C. sql語句中查找某欄位中含有某字元串的語句怎麼寫
select filename from oa_file where filename not like '%[!-¥]%'
或者這個:
select filename from oa_file where filename not like '%[!-?]%'
出現的問題就是問號和問好也是不一樣的,比如說英文標點半形的問號是「?」,英文標點全形的問號是「?」但是中文半形問號是「?」中文全形的問號是「?」
這些都是不一樣的,你搜出來的都是帶有英文半形問號的文件。
(3)sql符串圖片擴展閱讀:
SQL中的欄位「包含」與「包含於」字元串的寫法
1、查詢表中某欄位值「包含」某字元串的所有記錄的方法
假如表中有一個name欄位,查詢name包含「張三」的所有記錄,可以這樣寫sql:
Stirng strsql="SELECT * FROM 表名 WHERE name LIKE 』%"+"張三"+"%』";
2、查詢某欄位值「包含於」某個字元串的所有記錄的方法
如果查詢表中name欄位包含於字元串「張三是個好學生」的所有記錄,可以這樣寫sql:
String strsql="SELECT * FROM 表名 WHERE INSTR(』張三是個好學生』,name)>0";
即可查詢,記錄中的name欄位值中包括:張、三、是、個、好、學、生、張三、......等所有記錄。
註:以上sql字元串中請將全形符號改為半形符號。
D. sql server 中的image數據類型。怎麼存儲8張圖片
1、首先打開SQL Server後,選擇資料庫,點擊頂部的新建查詢按鈕,如下圖所示。
E. sql存儲過程怎麼截取字元串達到我下面圖片的效果
create proc ss
@a1 varchar(50)
as
declare @i int,@j int,@k int
set @i =charindex(':',@a1)
set @j =charindex(':',@a1,@i+1)
set @k=charindex(':',@a1,@j+1)
select substring(@a1,1,@i-1),substring(@a1,@i+1,@j-@i-1),substring(@a1,@j+1,@k-@j-1)
F. C# 如何從sql資料庫中讀取中imge圖片欄位轉換成base64字元串格式
存在資料庫中的圖片是二進制數據吧,你把它取出來,再用 Encodeing 好像是這么寫的,這個類提供了轉換成各種編碼的字元串的方法,提供思路給你,請原諒沒辦法直接給你寫出完整的代碼,希望你的問題可以解決。
G. SQL中截圖一個字元串
update tbl
set tel=left(tel,len(tel)-1)
H. 求 從MS SQL 資料庫中 某個表 某個欄位里 字元串中提取 圖片地址的 ASP 代碼 越詳細越好
<%
strtemp="這里是字元串ssss<imgalt=""sss""src=""http://www.test.com/test.jpg""/><imgalt=""sss""src=""http://www.test.com/test.png""/><imgalt=""sss""src=""http://www.test.com/test.bmp""/><imgalt=""sss""src=""http://www.test.com/test.gif""/>ddddddddddssss<imgsrc=""http://www.test.com/test2.gif""alt=""sss""/>dddddddddd"
find_img(strtemp)
functionfind_img(strtemp)
dimarrtemp
dimi,url_gif,num_gif,url_jpg,num_jpg,url_png,num_png,url_other,num_other
arrtemp=split(strtemp,"<img")
ifUbound(arrtemp)<=0thenresponse.Write"沒有檢測到圖片標識":exitfunction
response.Write"一共檢測到圖片標識數量:"&Ubound(arrtemp)&"<br>"
fori=1toUbound(arrtemp)
temp=cutstr(cutstr(cutstr(arrtemp(i),"right","/>"),"left","src="""),"right","""")
ext=Ucase(right(temp,4))
selectcaseext
case".GIF"
url_gif=url_gif&"|"&temp
num_gif=num_gif+1
case".JPG"
url_jpg=url_jpg&"|"&temp
num_jpg=num_jpg+1
case".PNG"
url_png=url_png&"|"&temp
num_png=num_png+1
caseelse
url_other=url_other&"|"&temp
num_other=num_other+1
endselect
next
response.Write"<fontcolor=green>返回統計:</font><br>"
response.Write"<hr><fontcolor=blue>1)過濾GIF格式圖片共"&num_gif&"張</font><br>"&replace(url_gif,"|","<br>")
response.Write"<hr><fontcolor=blue>2)過濾JPG格式圖片共"&num_jpg&"張</font><br>"&replace(url_jpg,"|","<br>")
response.Write"<hr><fontcolor=blue>3)過濾PNG格式圖片共"&num_png&"張</font><br>"&replace(url_png,"|","<br>")
response.Write"<hr><fontcolor=blue>4)其他格式圖片(BMP格式等)共"&num_other&"張</font><br>"&replace(url_other,"|","<br>")
endfunction
functioncutstr(temp,direct,str)
ifdirect="right"then'剪去標識符右邊的內容(包括標識符)
cutstr=left(temp,instr(temp,str)-1)
else'剪去標識符左邊的內容(包括標識符)
cutstr=right(temp,len(temp)-instr(temp,str)-len(str)+1)
endif
endfunction
%>
這是幾年前我也遇到類似問題時提問,別人的一個回答,,,測試過可以用。。。你自己稍稍修改字元串就可以了。
I. sql查詢字元串長度,怎麼過濾掉其中的圖片長度,如圖
你加上where條件試試 where條件的內容可能如下:
where doc not like '<img%'
J. sql中使字元串自動加1.例如:2012120001加1變成2012120002;2012120009加1變成2012120010,如下圖所示:
這個很簡單,用序列。Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE許可權,
CREATE SEQUENCE SEQ1(序列名)
INCREMENT BY 1 -- 每次加幾個
START WITH 1 -- 從1開始計數
NOMAXVALUE -- 不設置最大值
NOCYCLE -- 一直累加,不循環
CACHE 10;