Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / передача данных текстового файла в оракл / 10 сообщений из 10, страница 1 из 1
17.05.2013, 09:45
    #38261373
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
Доброе утро! подскажите пожалуйста где можно почитать литературу
о взаимодействии оракла и visual vasic, есть задача данные текстового файла залить в таблицу оракла
или может у кого есть пример.
помогите пожалуйста
тока начал постигать visual basic и понял что там темный лес, с ораклом все проще :)
...
Рейтинг: 0 / 0
17.05.2013, 09:46
    #38261377
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
вот что смог сам сделать...
но оно не работает
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
    Dim conn As New OracleConnection(oradb)
        Dim filename1 As String
        filename1 = My.Computer.FileSystem.ReadAllText("C:\test1.txt")
        conn.Open()
        Dim cmd As New OracleCommand
        cmd.Connection = conn
        cmd.CommandText = ("insert into msg.testvb (test) values (@filename1)")
        cmd.Parameters.Add("@filename1", SqlDbType.VarBinary).Value = filename1
        cmd.CommandType = CommandType.Text
        Dim dr As OracleDataReader = cmd.ExecuteReader()
        cmd.Dispose()
        conn.Dispose()
...
Рейтинг: 0 / 0
17.05.2013, 10:24
    #38261459
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
пробую такой вариант

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Dim oradb As String = "Data Source=jamocs;User Id=ocs;Password=_ocs;"
        Dim conn As New OracleConnection(oradb)
        Dim filename1 As String
        filename1 = My.Computer.FileSystem.ReadAllText("C:\test1.txt")
        conn.Open()
        Dim cmd As New OracleCommand
        cmd.Connection = conn
        cmd.CommandText = ("insert into msg.testvb (test) values (@filename1)")
        'cmd.Parameters.Add("@filename1", SqlDbType.Text).Value = filename1
        cmd.Parameters.Add("@filename1", OracleClob.MaxSize).Value = filename1
        'cmd.Parameters.Add("@filename1", SqlDbType.Text).Value = filename1
        cmd.CommandType = CommandType.Text
        cmd.ExecuteReader.GetOracleClob(filename1)
        cmd.Dispose()
        conn.Dispose()



пишет oracle missing expression
...
Рейтинг: 0 / 0
17.05.2013, 11:25
    #38261596
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
bombimbom,

.. зачем вы для записи в базу используете Data Reader ? ... для инсертов в .NET есть ExecuteNonQuery()
...
Рейтинг: 0 / 0
17.05.2013, 11:30
    #38261609
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
carrotik,
я пока почемуто думаю что
ExecuteNonQuery() исопльзуется только для sqlserver
...
Рейтинг: 0 / 0
17.05.2013, 11:33
    #38261614
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
cmd.ExecuteNonQuery()
таже проблема
...
Рейтинг: 0 / 0
17.05.2013, 13:38
    #38261915
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
bombimbomпишет oracle missing expression
1.в оракле параметр выделяется двоеточием , а не собакой
2.для типа параметра нужно использовать оракловые типы , а не мсскульные
3.ну и конечно использовать выполнения команды ,а не создание ридера
...
Рейтинг: 0 / 0
17.05.2013, 16:42
    #38262378
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
pation,
Долго мучился и путем ошибок и переборов добился передачи данных, но у меня теперь вместо текста
bbbbbb передает 4294967295 поле в таблице как clob , использую следующий скрипт:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
  Dim conn As New OracleConnection(oradb)
        Dim filename1 As String
        filename1 = My.Computer.FileSystem.ReadAllText("C:\tabl.xml")
        conn.Open()
        Dim cmd As New OracleCommand
        cmd.Connection = conn
        cmd.CommandType = CommandType.Text
        cmd.CommandText = ("insert into msg.testvb (test) VALUES (:filename)")
        cmd.Parameters.Add("filename1", OracleClob.MaxSize)
        cmd.ExecuteNonQuery()
        cmd.Dispose()
        conn.Dispose()



можете подсказать почему такой текст попадает
...
Рейтинг: 0 / 0
17.05.2013, 17:43
    #38262475
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
bombimbom,

.. вот тут посмотрите код, там вроде заработало ...
https://forums.oracle.com/forums/thread.jspa?threadID=275150
...
Рейтинг: 0 / 0
20.05.2013, 10:16
    #38264092
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
передача данных текстового файла в оракл
фуф разобрался! Большое Вам спасибо
оказывается нужно было всего ничего :)
Dim conn As New OracleConnection(oradb)
Dim filename1 As String
filename1 = My.Computer.FileSystem.ReadAllText("C:\test.txt")
conn.Open()
Dim cmd As New OracleCommand
cmd.Connection = conn
cmd.CommandType = CommandType.Text
cmd.CommandText = ("insert into msg.testvb (test) VALUES (:filename)")
cmd.Parameters.Add("filename1", OracleDbType.Clob).Value = filename1 ' тут поменять на OracleDbType.Clob
cmd.ExecuteNonQuery()
cmd.Dispose()
conn.Dispose()
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / передача данных текстового файла в оракл / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]