當前位置:首頁 » 編程語言 » sql資料庫存長文件
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql資料庫存長文件

發布時間: 2022-06-24 21:25:25

Ⅰ 如何完全用sql語句,將文件存到資料庫

SQL Server 2005:

通過OPENROWSET和bcp:
---示例1:
--SQLServerimportimage-SQLServerexportimage--ExtractimageSQLServer-SQLServerexportbinarydata
USEAdventureWorks;
GO

--
CREATETABLEdbo.PhotoLibrary(
PhotoLibraryIDINTIDENTITY(1,1)PRIMARYKEY,
ImageNameVARCHAR(100),
PhotoVARBINARY(MAX))
GO

--SQLServerimportimage-
INSERTINTOdbo.PhotoLibrary
([ImageName])
VALUES('MadisonAVE.JPG')
UPDATEdbo.PhotoLibrary
SETPhoto=(SELECT*
FROMOPENROWSET(BULK'e:imagephotoMadisonAVE.JPG',--源文件地址
SINGLE_BLOB)ASx)
WHERE[ImageName]='MadisonAVE.JPG'
GO

--Checktablepopulation
SELECT*
FROMdbo.PhotoLibrary
GO

--SQLServerexportimage
DECLARE@CommandNVARCHAR(4000)

--KeepthecommandonONELINE-SINGLELINE!!!-brokenhereforpresentation
SET@Command='bcp"SELECTPhotoFROMAdventureWorks.dbo.PhotoLibrary"
queryout"e:imagephotoexpMadisonAVE.jpg"-T-n-SPRODSQL2005'
PRINT@Command--debugging
EXECxp_cmdshell@Command
GO---示例2:
-------------T-
--導出所有的圖象到文件
--Sourcetable:Proction.ProctPhoto-Destination:K:dataimagesproctphoto
--來源表Proction.ProctPhoto目標:K:dataimagesproctphoto
------------

USEAdventureWorks2008;
GO

DECLARE@CommandVARCHAR(4000),
@PhotoIDINT,
@ImageFileNameVARCHAR(128)
DECLAREcurPhotoImageCURSORFOR--Cursorforeachimageintable
SELECTProctPhotoID,
LargePhotoFileName
FROMProction.ProctPhoto
WHERELargePhotoFileName!='no_image_available_large.gif'
OPENcurPhotoImage
FETCHNEXTFROMcurPhotoImage
INTO@PhotoID,
@ImageFileName
WHILE(@@FETCH_STATUS=0)--Cursorloop
BEGIN

--KeepthebcpcommandonONELINE-SINGLELINE!!!-brokenupforpresentation
SET@Command='bcp"SELECTLargePhotoFROM
AdventureWorks2008.Proction.ProctPhotoWHEREProctPhotoID='+
convert(VARCHAR,@PhotoID)+'"queryout"K:dataimagesproctphoto'+
@ImageFileName+'"-T-n-SHPESTAR'
PRINT@Command–debugging

/*bcp".Proction.ProctPhoto
WHEREProctPhotoID=69"queryout
"K:dataimagesproctphoto acer02_black_f_large.gif"-T-n-SHPESTAR
*/

EXECxp_cmdshell@Command--
FETCHNEXTFROMcurPhotoImage
INTO@PhotoID,
@ImageFileName
END--cursorloop
CLOSEcurPhotoImage
DEALLOCATEcurPhotoImage

/*output
NULL
Starting...
NULL
1rowscopied.
Networkpacketsize(bytes):4096
ClockTime(ms.)Total:16Average:(62.50rowspersec.)
NULL
.....
*/

------------

Ⅱ sql資料庫最多可以存放多少數據,到達上限!

sql資料庫可以達到的容量上線,一般是和文件系統的上限是一致的,也就是說資料庫能承載的容量一般比文件系統都大。
不用考慮數據記錄的數量,上千萬,上億,都可以,只要文件存儲容量小於文件系統的上限都沒有問題。

Ⅲ 怎樣將SQL Sever資料庫保存到指定的文件夾

新建資料庫時,
常規----設置資料庫名稱
數據文件----選擇資料庫文件存儲地方
事務日誌----選擇事物日誌文件存儲地方
如果已經建好了,在資料庫上右建--所有任務--分離資料庫
然後把資料庫的mdf和ldf文件剪切到指定文件夾,再右鍵附加資料庫即可.

Ⅳ SQL資料庫文件的最大容量是多少

SQLSERVER2000技術規格

--------------系統技術規格---------------

--每個伺服器最多可以允許16個SQLSERVER實例

--每個實例可擁有 2147483467 個鎖

--------------資料庫技術規格--------------

--SQLSERVER的資料庫大小1048516TB

--每個資料庫可擁有的文件組數32767

--每個資料庫可擁有的文件組數256

--文件大小(數據文件)32TB ---

--文件大小(日誌文件)32TB ---

--資料庫中的對象數2 147 483 647

--標識符的長度128

--------------表技術規格-------------------

--每個資料庫中可擁有的表數受限於資料庫中的對象數

--每個表可擁有的行數受限於可用的存儲容量

--每個表的主鍵約束數1

--每個表的外鍵約束數253

--每個表的引用數253

--每個表的觸發器數受限於資料庫中的對象數

--每個表的簇索引數1

--每個表的非簇索引數249

--每個表的唯一約束249非簇的,1成簇的

--------------列技術規格-------------------

--每個索引可包含的列數16

--每個主鍵可包含的列數16

--每個外鍵可包含的列數16

--每個表的列數1024

--索引鍵的大小900位元組

--每個character或binary列的位元組數8000

--每個text,ntext或image列的位元組數2GB-2

--每行的位元組數8060

--每個索引的位元組數900

--每個主鍵的位元組數900

--每個外鍵的位元組數900

--------------SQL技術規格-------------------

--批處理大小65536乘以網路包大小

--每個SELECT語句可處理的表數256

--存儲過程源文件的位元組數小於批處理大小或250MB

--每個存儲過程的參數數目1024

--嵌套的子查詢數32

--嵌套的觸發器層數32

--每個SELECT語句可處理的列數4096

--每個INSERT語句可處理的列數1024

Ⅳ sql2000我在資料庫中存很長的文章用什麼類型

text

Ⅵ sql資料庫文件存放在哪

如果是 sql2005的話
後綴為 .mdf 或 .ldf 的 你可以選擇 資料庫右鍵的屬性找到文件組路徑

Ⅶ 請問SQL資料庫中,能存放很長文本的欄位類型是什麼

BLOB :大數據類型,最大存儲65K,不可以被導出,只能在oracle資料庫中進行查看。

擴展: BLOB (binary large object),二進制大對象,是一個可以存儲二進制文件的容器。在計算機中,BLOB常常是資料庫中用來存儲二進制文件的欄位類型。

Ⅷ 如何向sql server資料庫中存入文件,如壓縮包、excel文件等。

一般都只保存文件路徑,文件通過網路上傳到伺服器的指定目錄

或者可以把文件解析成位元組數組,轉成字元串保存

Ⅸ sql2005 資料庫文件太大,怎麼備份比較快

1、shutdown
2、復制數據文件
3、重啟服務