ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Робота з двійковими даними (SQL Server + ASP )
         

     

    Інформатика, програмування

    Робота з двійковими даними (SQL Server + ASP)

    Христофоров Юрій

    У статті буде розказано як можна працювати з двійковими даними в SQL Server за допомогою зв'язки ASP + ADO. Поставимо перед собою три завдання:

    завантажити jpg-файл у стовпець типу image таблиці SQL Server

    вивантажити цей файл зі збереженням на диску

    відобразити на web-сторінці зображення, взяте з бази даних

    Для початку створимо базу даних в SQL Server - нехай вона буде називатися test. Далі необхідно створити таблицю в нашій базі даних - Назвемо її blob. Для виконання зазначених дій можна скористатися інструментом SQL Server Enterprise Manager.

    Нижче на скріншоти показана структура цієї таблиці:

    blob_id - первинний ключ таблиці (поле типу IDENTITY)

    Тепер можна приступати до розробки ASP-скрипта для завантаження тестового файлу test.jpg в створену таблицю.

    Починаючи з версії ADO 2.5 і вище в ADO з'явився об'єкт ADODB.Stream. Він відмінно підходить для роботи з двійковими даними. Його ми і будемо використовувати.

    Файл import.asp        

    <% @   Language = VBScript%>   

    <%   

    option   explicit   

    Response.Buffer   = True   

    Response.Expires   = 0   

    Server.ScriptTimeout   = 600   

    Dim   cn, rs, objStream, sSQL   

    Set   cn = Server.CreateObject ( "ADODB.Connection")   

    Set   rs = Server.CreateObject ( "ADODB.Recordset")   

    Set   objStream = Server.CreateObject ( "ADODB.Stream")   

    cn.Open   "Provider = SQLOLEDB.1; Initial Catalog = test; Data Source = localhost; UID = yura; PWD = yura;"   

    sSQL   = "SELECT * FROM blob WHERE blob_id = 0"   

    rs.Open   sSQL, cn, 1, 3   

    rs.AddNew   

    objStream.Type   = 1   

    objStream.Open   

    'шлях до файлу для завантаження   

    objStream.LoadFromFile (Server.MapPath ("./")   & "Test.jpg")   

    rs.Fields ( "name"). Value =   "Тестова картинка"   

    rs.Fields ( "blob_file"). Value   = ObjStream.Read   

    rs.Update   

    rs.Close   

    objStream.Close   

    cn.Close   

    Set   rs = Nothing   

    Set   objStream = Nothing   

    Set   cn = Nothing   

    %>   

      

      

      

      

    Файл успішно завантажено!   

      

      

      

        

    Тепер напишемо скрипт для експорту двійкових даних з бази даних в jpg файл.

    Файл export.asp        

    <% @   Language = VBScript%>   

    <%   

    option   explicit   

    Response.Buffer   = True   

    Response.Expires   = 0   

    Server.ScriptTimeout   = 600   

    Dim   cn, rs, objStream, sSQL   

    Set   cn = Server.CreateObject ( "ADODB.Connection")   

    Set   rs = Server.CreateObject ( "ADODB.Recordset")   

    Set   objStream = Server.CreateObject ( "ADODB.Stream")   

    cn.Open   "Provider = SQLOLEDB.1; Initial Catalog = test; Data Source = localhost; UID = yura; PWD = yura;"   

    'фразу однозначно одержує запис   з таблиці   

    'в даному випадку для прикладу blob_id =   1   

    'у Вашому випадку це може бути інша   число   

    sSQL   = "SELECT * FROM blob WHERE blob_id = 1"   

    rs.Open   sSQL, cn, 1, 3   

    objStream.Type   = 1   

    objStream.Open   

    objStream.Write   rs.Fields ( "blob_file"). Value   

    'папка, де зберігається файл, повинна   NTFS мати права на читання/запис для   

    'інтернет-користувача (зазвичай   IUSR_ <ім'я_комп'ютера>)   

    'в даному випадку - це поточна папка   

    objStream.SaveToFile   Server.MapPath ("./") & "test_from_db.jpg", 2   

    rs.Close   

    objStream.Close   

    cn.Close   

    Set   rs = Nothing   

    Set   objStream = Nothing   

    Set   cn = Nothing   

    %>   

      

      

      

      

    Файл успішно збережений з бази   даних!   

      

      

      

        

    Тепер напишемо скрипт для отримання зображення з бази даних і безпосереднього відображення на web-сторінці.

    Файл img.asp        

    <% @   Language = VBScript%>   

    <%   

    option   explicit   

    Response.Buffer   = True   

    Response.Expires   = 0   

    Server.ScriptTimeout   = 600   

    Response.ContentType   = "Image/jpeg"   

    Dim   cn, rs, sSQL, binStream   

    Set   cn = Server.CreateObject ( "ADODB.Connection")   

    Set   rs = Server.CreateObject ( "ADODB.Recordset")   

    cn.Open   "Provider = SQLOLEDB.1; Initial Catalog = test; Data   Source = localhost; UID = yura; PWD = yura; "   

    'фразу однозначно одержує запис з   таблиці   

    'в даному випадку для прикладу blob_id =   1   

    'у Вашому випадку це може бути інша   число   

    sSQL   = "SELECT * FROM blob WHERE blob_id = 1"   

    rs.Open   sSQL, cn, 1, 3   

    binStream   = Rs.Fields ( "blob_file"). Value   

    rs.Close   

    cn.Close   

    Set   rs = Nothing   

    Set   cn = Nothing   

    Response.BinaryWrite   binStream   

    %>     

    ASP-скрипт img.asp можна вказати в атрибуті src тега img:

    Файл img_test.asp        

    <% @   Language = VBScript%>   

      

      

      

      

      

      

      

      

        

    Список літератури

    Для підготовки даної роботи були використані матеріали з сайту http://www.activex.net.ru/

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status