// 下载文件
procedure TForm1.Button2Click(Sender: TObject);
var
str1: string;
begin
if savedialog1.Execute then
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text := ’select Name, TheFile from 上传文件 where id=”1” ‘;
adoquery1.Open;
str1 := adoquery1.fieldbyname(‘Name’).AsString;
Tblobfield(adoquery1.FieldByName(‘TheFile’)).SaveToFile(savedialog1.FileName);
end;
end;
SQL code
IF OBJECT_ID (‘file_table’, ‘U’) IS NOT NULL DROP TABLE file_table;
GO
CREATE TABLE file_table(FileName nvarchar(60),
FileType nvarchar(60), Document varbinary(max))
GO
FROM OPENROWSET(BULK ‘C:\myText.txt’, SINGLE_BLOB) AS Document
INSERT INTO file_table(FileName, FileType, Document)
SELECT ‘Img252837387.jpg’ AS 文件名, ‘.jpg’ AS 文件类型, *
FROM OPENROWSET(BULK ‘C:\Img252837387.jpg’, SINGLE_BLOB) AS Document
INSERT INTO file_table(FileName, FileType, Document)
SELECT ‘1.rar’ AS 文件名, ‘.rar’ AS 文件类型, *
FROM OPENROWSET(BULK ‘C:\1.rar’, SINGLE_BLOB) AS Document
GO
SQL Server 如何将图形文件添加进SQL表中~~一般都是存路径。
如果你不想存路径的话, 我给你个例子(可以保存任何文件到数据库)SQL code
// 上传文件
procedure TForm1.Button1Click(Sender: TObject);
var
fs: Tfilestream;
begin
fs := Tfilestream.Create(edit1.Text, Fmopenread);
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text := ’select Name,TheFile from 上传文件’;
adoquery1.Open;
adoquery1.Append;
adoquery1.FieldByName(‘Name’).AsString := edit1.Text;
Tblobfield(adoquery1.FieldByName(‘TheFile’)).LoadFromStream(fs);
adoquery1.Post;
fs.Free;
showmessage(‘上传成功!’);
end;
// 下载文件
procedure TForm1.Button2Click(Sender: TObject);
var
str1: string;
begin
if savedialog1.Execute then
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text := ’select Name, TheFile from 上传文件 where id=”1” ‘;
adoquery1.Open;
str1 := adoquery1.fieldbyname(‘Name’).AsString;
Tblobfield(adoquery1.FieldByName(‘TheFile’)).SaveToFile(savedialog1.FileName);
end;
end;
图片保存到数据库的方法http://topic.csdn.net/u/20081024/11/846e3e56-218b-4b07-b733-ee87dc2fe687.html?882064923
参考:http://blog.csdn.net/htl258/archive/2010/04/14/5486178.aspx
SQL code
IF OBJECT_ID (‘file_table’, ‘U’) IS NOT NULL DROP TABLE file_table;
GO
CREATE TABLE file_table(FileName nvarchar(60),
FileType nvarchar(60), Document varbinary(max))
GO
FROM OPENROWSET(BULK ‘C:\myText.txt’, SINGLE_BLOB) AS Document
INSERT INTO file_table(FileName, FileType, Document)
SELECT ‘Img252837387.jpg’ AS 文件名, ‘.jpg’ AS 文件类型, *
FROM OPENROWSET(BULK ‘C:\Img252837387.jpg’, SINGLE_BLOB) AS Document
INSERT INTO file_table(FileName, FileType, Document)
SELECT ‘1.rar’ AS 文件名, ‘.rar’ AS 文件类型, *
FROM OPENROWSET(BULK ‘C:\1.rar’, SINGLE_BLOB) AS Document
GO
数据库加image类型的字段,可以直接保持文件
方法一:存储路径方法二:设置image类型字段,以流的方式读取图片文件,转成字节数组后,写入数据库