Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Вниз

Как записать графический файл в MS SQL?   Найти похожие ветки 

 
nikolo   (2002-12-10 11:06) [0]

Есть БД с полем EFile типа binary. Мне нужно каким-то образом записать в него графический файл. Как это можно сделать?


 
asdf   (2002-12-10 11:07) [1]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1038341877&n=1


 
nikolo   (2002-12-10 12:20) [2]

Примеры не совсем подходят, т.к. я использую ADO, а у него нет метода LoadFromStream.
Кто-нибудь может подсказать как мне записать файл, используя TADOCommand или TADOQuery?

Command.CommandText := "Insert Into dbo.TableXXX (F_File) Values (:pmFile)";
Command.Parameters.ParamValues["pmFile"] := ???;
Command.Execute;


Помогите, очень нужно...


 
Olega   (2002-12-15 10:24) [3]

Не помню, откуда это:

Copy text or image into or out of SQL Server

In this article, I want to show, how you can copy a single text or
image value into or out of SQL Server by using the textcopy.exe utility.
You can find this utility in the directory containing the standard
SQL Server EXE files (C:\Mssql\Binn for SQL Server 6.5, by default
and C:\Mssql7\Binn for SQL Server 7.0, by default).

Textcopy utility is not described in SQL Server Books Online, but you
can get its description by typing textcopy /? from the command prompt.
This is the description:

Copies a single text or image value into or out of SQL Server. The value
is a specified text or image "column" of a single row (specified by the
"where clause") of the specified "table".

If the direction is IN (/I) then the data from the specified "file" is
copied into SQL Server, replacing the existing text or image value. If the
direction is OUT (/O) then the text or image value is copied from
SQL Server into the specified "file", replacing any existing file.

TEXTCOPY [/S [sqlserver]] [/U [login]] [/P [password]]
[/D [database]] [/T table] [/C column] [/W"where clause"]
[/F file] [{/I | /O}] [/K chunksize] [/Z] [/?]

/S sqlserver The SQL Server to connect to. If "sqlserver" is not
specified, the local SQL Server is used.
/U login The login to connect with. If "login" is not specified,
a trusted connection will be used.
/P password The password for "login". If "password" is not
specified, a NULL password will be used.
/D database The database that contains the table with the text or
image data. If "database" is not specified, the default
database of "login" is used.
/T table The table that contains the text or image value.
/C column The text or image column of "table".
/W "where clause" A complete where clause (including the WHERE keyword)
that specifies a single row of "table".
/F file The file name.
/I Copy text or image value into SQL Server from "file".
/O Copy text or image value out of SQL Server into "file".
/K chunksize Size of the data transfer buffer in bytes. Minimum
value is 1024 bytes, default value is 4096 bytes.
/Z Display debug information while running.
/? Display this usage information and exit.

You will be prompted for any required options you did not specify.


You can use the following stored procedure to simplify the using of
textcopy utility:

CREATE PROCEDURE sp_textcopy (
@srvname varchar (30),
@login varchar (30),
@password varchar (30),
@dbname varchar (30),
@tbname varchar (30),
@colname varchar (30),
@filename varchar (30),
@whereclause varchar (40),
@direction char(1))
AS
DECLARE @exec_str varchar (255)
SELECT @exec_str =
"textcopy /S " + @srvname +
" /U " + @login +
" /P " + @password +
" /D " + @dbname +
" /T " + @tbname +
" /C " + @colname +
" /W "" + @whereclause +
"" /F " + @filename +
" /" + @direction
EXEC master..xp_cmdshell @exec_str


This is the example to copy image into SQL Server database pubs,
table pub_info, column name logo from picture.bmp file where pub_id="0736":

sp_textcopy @srvname = "ServerName",
@login = "Login",
@password = "Password",
@dbname = "pubs",
@tbname = "pub_info",
@colname = "logo",
@filename = "c:\picture.bmp",
@whereclause = " WHERE pub_id="0736" ",
@direction = "I"


By the way, you should insert something into text/image column before
copy text/image into it. I mean, this value should not be null.
You should write (for example):

INSERT INTO [dbo].[images] VALUES ("1", 0x0, null)


instead of:

INSERT INTO [dbo].[images] VALUES ("1", null, null)


Otherwise, you will get the following error message:

ERROR: Text or image pointer and timestamp retrieval failed.


 
asmith   (2002-12-15 15:51) [4]

Действительно, утилита TEXTCOPY может использоваться для быстрой заливки в поля TEXT или IMAGE текстовой или графической информации. Подробности можно найти в BOL, а также посмотреть, как она используется при инсталляции MSSQL (pubimage.bat, pubtext.bat в \Install) - все достаточно просто.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.006 c
1-24972
viper
2002-12-27 09:13
2003.01.09
ListView


14-25053
vuk
2002-12-20 15:10
2003.01.09
Software Development


14-25036
vajo
2002-12-20 08:57
2003.01.09
Регистрация действий на компьютере


14-25033
Val
2002-12-19 20:22
2003.01.09
Тест на умопомешательство :)


14-25074
MsGuns
2002-12-20 16:58
2003.01.09
ГДЕ МОИ НОСКИ ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский