|
|
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Люди добрые помогите плииз, а то мы тут уже вдвоем мучаемся ничего не выходит в общем так: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 12:35 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
сорри нечаянно нажал нето Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim cn As ADODB.Connection Dim rs As New ADODB.Recordset Dim mstream As New ADODB.Stream Dim SQLstr As String Dim i As Integer If ImgAddr.Text <> "" Then cn = New ADODB.Connection cn.ConnectionTimeout = 200 cn.Open("Provider=SQLOLEDB;data Source=WEBSRV;Initial Catalog=docob;User Id=docuser;Password=") SQLstr = "Select docimg,uid from doclist" rs = New ADODB.Recordset rs.Open(SQLstr, cn, ADODB.CursorTypeEnum.adOpenKeyset, ADODB.LockTypeEnum.adLockOptimistic) mstream = New ADODB.Stream mstream.Type = ADODB.StreamTypeEnum.adTypeBinary mstream.Open() mstream.LoadFromFile(ImgAddr.Text) rs.Fields("docimg").Value = mstream.Read rs.Update() rs.Close() cn.Close() Else : ImgAddr.Text = "отсутвует рисунок" End If End Sub End Class вот в таком виде картинка пишется в первую строку, как сделать чтобы писалось в любую???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 12:37 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Все не так просто, как кажется. Если б было просто - помог бы человеку своими силами В общем, перевожу с русского на программистский :)) Visual Studio 2005, ADO 2.8, MS SQL Server 2000. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. Проблем две: во-первых, непонятки со свойством rs.Source - он превратился в объект и у него появились свойства-члены - ToString, Eval и т.д. - как этим пользоваться? во-вторых, при попытке получить ОДНУ запись с помощью логичного "Select docimg, uid from doclist where uid = 3" при выполнении rs.Update() выдает ошибку "Время ожидания истекло" (в таблице 4 записи, размер файла - до 100 кБ) - с таким я еще не сталкивался (потому что на 2005-м, хвала БГ, не работал) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 13:00 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
кстати, вот это: mstream = New ADODB.Stream не наша ошбика, - VS2005 автоматически убирает Set ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 13:38 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
и вот это: ADODB.CursorTypeEnum.adOpenKeyset приходится писать, т.к. простого adOpenKeyset VS2005 не понимает... Я фигею с этого 2005-го, билли нам новую игрушку сделал... занимательную :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 14:00 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
nibblesи вот это: ADODB.CursorTypeEnum.adOpenKeyset приходится писать, т.к. простого adOpenKeyset VS2005 не понимает... Даже если ADODB в референсах подключен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 14:05 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
угу, сам удивляюсь ))) From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 14:09 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Пока безрезультатно. Значит так, что делали: 1. Подключали вместо ADODB 2.8 библиотеку 2.5 2. Вместо "select [список полей]" писали "select *" 3. Вместо adOpenKeyset использовали adOpenDinamic Какие еще будут предложения из раздела "Попинать шины"? :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 14:15 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
вот как я сохраняю файл в базу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. может чем-то поможет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2006, 09:53 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Оххх, короче поставил я VB 6 отдельно, перекинул процедуру, поправил синтаксис, и получил в результате туже самую ошибку. В общем не в Visual Studio дело. кто может что подсказать, откликнитесь пожалуйста. From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 08:56 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
что за ошибка? и приведите код на ВБ6 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 10:41 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
ошибка: "Время ожидания истекло" код на вб 6 отличается от Visual Studio только наличием Set'ов и отсутсвием скобок. на всякий случай приведу конечно: From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 10:46 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 10:48 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
давай скрипт таблицы и всех dependens-объектов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 10:58 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[doclist]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[doclist] GO CREATE TABLE [dbo].[doclist] ( [uid] [int] IDENTITY (1, 1) NOT NULL , [number] [char] (20) COLLATE Cyrillic_General_CI_AS NULL , [datedoc] [datetime] NULL , [lev1] [int] NULL , [lev2] [int] NULL , [docimg] [image] NULL , [comments] [varchar] (255) COLLATE Cyrillic_General_CI_AS NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 11:09 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
код рабочий проверьте права досьтупа к серверу, таблице и все-таки ИМХО лучше не выбирать все строки из таблицы, где есть поля типа IMAGE, а ограничивать выборку опреатором WHERE, т.к при больщих объемах данных (учитывая поля ИМАДЖ) сеть может не справляться и запрос отваливаться по таймауту ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 11:55 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Е-мое, никто что ли не знает как записываются байтовые массивы в базу??? заменить Код: plaintext Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2006, 15:17 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Поехали: 1) я бы конечно тоже грешил на права доступа, если бы во-первых в первую строчку он не писал (пишет ведь!! ), и если бы я сам лично не создавал пользователя docuser у которого права dbo на эту базу. Проверю конечно на всякий случай. 2) AppendChunk штука конечно хорошая, но результат получаем тот же )) "Время ожидания истекло" 3) Кстати: когда я переделывал прогу под AppendChunk, я забыл поставить r = mstream.read дык вот, при этом запись в нужную строку прошла нормально, только конечно там была не картинка, поэтому выводить было нечего... From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 08:18 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
хех, я тут решил проверить, самый тупой вариант: взял каринку на 12 кб, записалась, а вот больше 60 кб не хочет... кто знает где время ожидания поправить? con.connectionTimeout? From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 10:13 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Забыл сказать в первую строку пишет вне зависимости от размера... From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 10:15 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Ничего не понял. Код в студию. Мой работает без проблем. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 10:28 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
Файл 100.txt под 200kb и влетает как птичка без всяких таймаутов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 10:29 |
|
||
|
SQL и картинки
|
|||
|---|---|---|---|
|
#18+
хм ну ладно, вот вариант кода с использованием того что ты написал Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. если UIDnum.text >= 2 то при попытке записать файл больше 12 кб получаем "Время ожидания истекло" From Black Dragon with HOT Greetings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2006, 10:43 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=33642732&tid=2165991]: |
0ms |
get settings: |
8ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
155ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 465ms |

| 0 / 0 |
